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
GFileInfo* g_file_query_filesystem_info(GFile* file, const char* attributes,
                                        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->query_filesystem_info == NULL)
    {
        g_set_error_literal(error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
                            _("Operation not supported"));
        return NULL;
    }

    return (*iface->query_filesystem_info)(file, attributes, cancellable,
                                           error);
}
/**
 * g_file_query_filesystem_info:
 * @file: input #GFile
 * @attributes:  an attribute query string
 * @cancellable: (nullable): optional #GCancellable object,
 *     %NULL to ignore
 * @error: a #GError
 *
 * Similar to g_file_query_info(), but obtains information
 * about the filesystem the @file is on, rather than the file itself.
 * For instance the amount of space available and the type of
 * the filesystem.
 *
 * The @attributes value is a string that specifies the attributes
 * that should be gathered. It is not an error if it's not possible
 * to read a particular requested attribute from a file - it just
 * won't be set. @attributes should be a comma-separated list of
 * attributes or attribute wildcards. The wildcard "*" means all
 * attributes, and a wildcard like "filesystem::*" means all attributes
 * in the filesystem namespace. The standard namespace for filesystem
 * attributes is "filesystem". Common attributes of interest are
 * #G_FILE_ATTRIBUTE_FILESYSTEM_SIZE (the total size of the filesystem
 * in bytes), #G_FILE_ATTRIBUTE_FILESYSTEM_FREE (number of bytes available),
 * and #G_FILE_ATTRIBUTE_FILESYSTEM_TYPE (type of the filesystem).
 *
 * 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. Other errors are possible too, and depend on what
 * kind of filesystem the file is on.
 *
 * Returns: (transfer full): a #GFileInfo or %NULL if there was an error.
 *     Free the returned object with g_object_unref().
 */


Similar to g_file_query_info(), but obtains information
about the filesystem the @file is on, rather than the file itself.
For instance the amount of space available and the type of
the filesystem.

The @attributes value is a string that specifies the attributes
that should be gathered. It is not an error if it's not possible
to read a particular requested attribute from a file - it just
won't be set. @attributes should be a comma-separated list of
attributes or attribute wildcards. The wildcard "*" means all
attributes, and a wildcard like "filesystem::*" means all attributes
in the filesystem namespace. The standard namespace for filesystem
attributes is "filesystem". Common attributes of interest are
#G_FILE_ATTRIBUTE_FILESYSTEM_SIZE (the total size of the filesystem
in bytes), #G_FILE_ATTRIBUTE_FILESYSTEM_FREE (number of bytes available),
and #G_FILE_ATTRIBUTE_FILESYSTEM_TYPE (type of the filesystem).

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. Other errors are possible too, and depend on what
kind of filesystem the file is on.

(transfer full): a #GFileInfo or %NULL if there was an error.
Free the returned object with g_object_unref().
Similar to g_file_query_info () but obtains information about the filesystem the @file is on rather than the file itself . For instance the amount of space available and the type of the filesystem . The @attributes value is a string that specifies the attributes that should be gathered . It is not an error if it ' s not possible to read a particular requested attribute from a file - it just won ' t be set . @attributes should be a comma - separated list of attributes or attribute wildcards . The wildcard " * " means all attributes and a wildcard like " filesystem :: * " means all attributes in the filesystem namespace . The standard namespace for filesystem attributes is " filesystem " . Common attributes of interest are #G_FILE_ATTRIBUTE_FILESYSTEM_SIZE ( the total size of the filesystem in bytes ) #G_FILE_ATTRIBUTE_FILESYSTEM_FREE ( number of bytes available ) and #G_FILE_ATTRIBUTE_FILESYSTEM_TYPE ( type of the filesystem ) . 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 . Other errors are possible too and depend on what kind of filesystem the file is on . ( transfer full ) : a #GFileInfo or %NULL if there was an error . Free the returned object with g_object_unref () .
GFileInfo* g_file_query_filesystem_info(GFile* file, const char* attributes,
                                        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->query_filesystem_info == NULL)
    {
        g_set_error_literal(error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
                            _("Operation not supported"));
        return NULL;
    }
    return (*iface->query_filesystem_info)(file, attributes, cancellable,
                                           error);
}
GFileInfo * g_file_query_filesystem_info ( GFile * file , const char * attributes , 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 -> query_filesystem_info == NULL ) { g_set_error_literal ( error , G_IO_ERROR , G_IO_ERROR_NOT_SUPPORTED , _ ( " " ) ) ; return NULL ; } return ( * iface -> query_filesystem_info ) ( file , attributes , cancellable , error ) ; }
g_file_query_filesystem_info:
 @file: input #GFile
 @attributes:  an attribute query string
 @cancellable: (nullable): optional #GCancellable object,
     %NULL to ignore
 @error: a #GError
g_file_query_filesystem_info : @file : input #GFile @attributes : an attribute query string @cancellable : ( nullable ) : optional #GCancellable object %NULL to ignore @error : a #GError