openbmc/build/tmp/deploy/sdk/witherspoon-2019-08-08/sysroots/armv6-openbmc-linux-gnueabi/usr/src/debug/glib-2.0/1_2.60.3-r0/glib-2.60.3/gio/gfile.c
GFileIOStream* g_file_open_readwrite(GFile* file, GCancellable* cancellable,
                                     GError** error)
{
    GFileIface* iface;

    g_return_val_if_fail(G_IS_FILE(file), NULL);

    if (g_cancellable_set_error_if_cancelled(cancellable, error))
        return NULL;

    iface = G_FILE_GET_IFACE(file);

    if (iface->open_readwrite == NULL)
    {
        g_set_error_literal(error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
                            _("Operation not supported"));
        return NULL;
    }

    return (*iface->open_readwrite)(file, cancellable, error);
}
/**
 * g_file_open_readwrite:
 * @file: #GFile to open
 * @cancellable: (nullable): a #GCancellable
 * @error: a #GError, or %NULL
 *
 * Opens an existing file for reading and writing. The result is
 * a #GFileIOStream that can be used to read and write the contents
 * of the file.
 *
 * If @cancellable is not %NULL, then the operation can be cancelled
 * by triggering the cancellable object from another thread. If the
 * operation was cancelled, the error %G_IO_ERROR_CANCELLED will be
 * returned.
 *
 * If the file does not exist, the %G_IO_ERROR_NOT_FOUND error will
 * be returned. If the file is a directory, the %G_IO_ERROR_IS_DIRECTORY
 * error will be returned. Other errors are possible too, and depend on
 * what kind of filesystem the file is on. Note that in many non-local
 * file cases read and write streams are not supported, so make sure you
 * really need to do read and write streaming, rather than just opening
 * for reading or writing.
 *
 * Returns: (transfer full): #GFileIOStream or %NULL on error.
 *     Free the returned object with g_object_unref().
 *
 * Since: 2.22
 */
@file: #GFile to open
@cancellable: (nullable): a #GCancellable
@error: a #GError, or %NULL

Opens an existing file for reading and writing. The result is
a #GFileIOStream that can be used to read and write the contents
of the file.

If @cancellable is not %NULL, then the operation can be cancelled
by triggering the cancellable object from another thread. If the
operation was cancelled, the error %G_IO_ERROR_CANCELLED will be
returned.

If the file does not exist, the %G_IO_ERROR_NOT_FOUND error will
be returned. If the file is a directory, the %G_IO_ERROR_IS_DIRECTORY
error will be returned. Other errors are possible too, and depend on
what kind of filesystem the file is on. Note that in many non-local
file cases read and write streams are not supported, so make sure you
really need to do read and write streaming, rather than just opening
for reading or writing.

(transfer full): #GFileIOStream or %NULL on error.
Free the returned object with g_object_unref().


@file : #GFile to open @cancellable : ( nullable ) : a #GCancellable @error : a #GError or %NULL Opens an existing file for reading and writing . The result is a #GFileIOStream that can be used to read and write the contents of the file . If @cancellable is not %NULL then the operation can be cancelled by triggering the cancellable object from another thread . If the operation was cancelled the error %G_IO_ERROR_CANCELLED will be returned . If the file does not exist the %G_IO_ERROR_NOT_FOUND error will be returned . If the file is a directory the %G_IO_ERROR_IS_DIRECTORY error will be returned . Other errors are possible too and depend on what kind of filesystem the file is on . Note that in many non - local file cases read and write streams are not supported so make sure you really need to do read and write streaming rather than just opening for reading or writing . ( transfer full ) : #GFileIOStream or %NULL on error . Free the returned object with g_object_unref () .
GFileIOStream* g_file_open_readwrite(GFile* file, GCancellable* cancellable,
                                     GError** error)
{
    GFileIface* iface;
    g_return_val_if_fail(G_IS_FILE(file), NULL);
    if (g_cancellable_set_error_if_cancelled(cancellable, error))
        return NULL;
    iface = G_FILE_GET_IFACE(file);
    if (iface->open_readwrite == NULL)
    {
        g_set_error_literal(error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
                            _("Operation not supported"));
        return NULL;
    }
    return (*iface->open_readwrite)(file, cancellable, error);
}
GFileIOStream * g_file_open_readwrite ( GFile * file , GCancellable * cancellable , GError * * error ) { GFileIface * iface ; g_return_val_if_fail ( G_IS_FILE ( file ) , NULL ) ; if ( g_cancellable_set_error_if_cancelled ( cancellable , error ) ) return NULL ; iface = G_FILE_GET_IFACE ( file ) ; if ( iface -> open_readwrite == NULL ) { g_set_error_literal ( error , G_IO_ERROR , G_IO_ERROR_NOT_SUPPORTED , _ ( " " ) ) ; return NULL ; } return ( * iface -> open_readwrite ) ( file , cancellable , error ) ; }
g_file_open_readwrite:
 @file: #GFile to open
 @cancellable: (nullable): a #GCancellable
 @error: a #GError, or %NULL
g_file_open_readwrite : @file : #GFile to open @cancellable : ( nullable ) : a #GCancellable @error : a #GError or %NULL