mirror of https://github.com/GNOME/gimp.git
Issue #9994: do not call g_file_info_get_is_hidden() (and others) directly.
This is not the main reason for the specific output in #9994. These ones are more probably because of similar usage in GTK (which updated its own calls to g_file_info_get_is_hidden|backup() in version 3.24.38). But we should likely also update the various calls we have to use the generic g_file_info_get_attribute_*() variants. To be fair, it is unclear to me when we can be sure that an attribute is set. For instance, when we call g_file_enumerate_children() or g_file_query_info() with specific attributes, docs say that it is still possible for these attributes to not be set. So I assume it means we should never use direct accessor functions. The only exception is that I didn't remove usage of g_file_info_get_name(), since its docs says: > * Gets a display name for a file. This is guaranteed to always be set. Even though it also says just after: > * It is an error to call this if the #GFileInfo does not contain > * %G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME. Which is very contradictory. But assuming that this error warning was over-zealous documentation, I kept the direct accessors since they are supposed to be slightly more optimized (still according to in-code documentation) so let's priorize them when we know they are set for sure.
This commit is contained in:
parent
d928bd2c93
commit
231ca0c505
|
@ -730,7 +730,7 @@ gimp_file_is_executable (GFile *file)
|
||||||
|
|
||||||
if (info)
|
if (info)
|
||||||
{
|
{
|
||||||
GFileType file_type = g_file_info_get_file_type (info);
|
GFileType file_type = g_file_info_get_attribute_uint32 (info, G_FILE_ATTRIBUTE_STANDARD_TYPE);
|
||||||
const gchar *filename = g_file_info_get_name (info);
|
const gchar *filename = g_file_info_get_name (info);
|
||||||
|
|
||||||
if (file_type == G_FILE_TYPE_REGULAR &&
|
if (file_type == G_FILE_TYPE_REGULAR &&
|
||||||
|
|
|
@ -382,13 +382,13 @@ gimp_data_loader_factory_load_directory (GimpDataFactory *factory,
|
||||||
GFileType file_type;
|
GFileType file_type;
|
||||||
GFile *child;
|
GFile *child;
|
||||||
|
|
||||||
if (g_file_info_get_is_hidden (info))
|
if (g_file_info_get_attribute_boolean (info, G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN))
|
||||||
{
|
{
|
||||||
g_object_unref (info);
|
g_object_unref (info);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
file_type = g_file_info_get_file_type (info);
|
file_type = g_file_info_get_attribute_uint32 (info, G_FILE_ATTRIBUTE_STANDARD_TYPE);
|
||||||
child = g_file_enumerator_get_child (enumerator, info);
|
child = g_file_enumerator_get_child (enumerator, info);
|
||||||
|
|
||||||
if (file_type == G_FILE_TYPE_DIRECTORY)
|
if (file_type == G_FILE_TYPE_DIRECTORY)
|
||||||
|
|
|
@ -1018,7 +1018,7 @@ gimp_extension_manager_search_directory (GimpExtensionManager *manager,
|
||||||
{
|
{
|
||||||
GFile *subdir;
|
GFile *subdir;
|
||||||
|
|
||||||
if (g_file_info_get_is_hidden (info))
|
if (g_file_info_get_attribute_boolean (info, G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN))
|
||||||
{
|
{
|
||||||
g_object_unref (info);
|
g_object_unref (info);
|
||||||
continue;
|
continue;
|
||||||
|
|
|
@ -452,7 +452,7 @@ gimp_imagefile_create_thumbnail (GimpImagefile *imagefile,
|
||||||
G_FILE_QUERY_INFO_NONE,
|
G_FILE_QUERY_INFO_NONE,
|
||||||
NULL, NULL);
|
NULL, NULL);
|
||||||
|
|
||||||
regular = (g_file_info_get_file_type (file_info) == G_FILE_TYPE_REGULAR);
|
regular = (g_file_info_get_attribute_uint32 (file_info, G_FILE_ATTRIBUTE_STANDARD_TYPE) == G_FILE_TYPE_REGULAR);
|
||||||
readable = g_file_info_get_attribute_boolean (file_info,
|
readable = g_file_info_get_attribute_boolean (file_info,
|
||||||
G_FILE_ATTRIBUTE_ACCESS_CAN_READ);
|
G_FILE_ATTRIBUTE_ACCESS_CAN_READ);
|
||||||
|
|
||||||
|
@ -715,7 +715,7 @@ gimp_imagefile_icon_callback (GObject *source_object,
|
||||||
|
|
||||||
if (file_info)
|
if (file_info)
|
||||||
{
|
{
|
||||||
private->icon = g_object_ref (g_file_info_get_icon (file_info));
|
private->icon = g_object_ref (G_ICON (g_file_info_get_attribute_object (file_info, G_FILE_ATTRIBUTE_STANDARD_ICON)));
|
||||||
g_object_unref (file_info);
|
g_object_unref (file_info);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1732,7 +1732,7 @@ gimp_palette_load_detect_format (GFile *file,
|
||||||
|
|
||||||
if (info)
|
if (info)
|
||||||
{
|
{
|
||||||
goffset size = g_file_info_get_size (info);
|
goffset size = g_file_info_get_attribute_uint64 (info, G_FILE_ATTRIBUTE_STANDARD_SIZE);
|
||||||
|
|
||||||
if (size == 768)
|
if (size == 768)
|
||||||
format = GIMP_PALETTE_FILE_FORMAT_ACT;
|
format = GIMP_PALETTE_FILE_FORMAT_ACT;
|
||||||
|
|
|
@ -130,7 +130,7 @@ file_open_image (Gimp *gimp,
|
||||||
if (! info)
|
if (! info)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
if (g_file_info_get_file_type (info) != G_FILE_TYPE_REGULAR)
|
if (g_file_info_get_attribute_uint32 (info, G_FILE_ATTRIBUTE_STANDARD_TYPE) != G_FILE_TYPE_REGULAR)
|
||||||
{
|
{
|
||||||
g_set_error_literal (error, G_FILE_ERROR, G_FILE_ERROR_FAILED,
|
g_set_error_literal (error, G_FILE_ERROR, G_FILE_ERROR_FAILED,
|
||||||
_("Not a regular file"));
|
_("Not a regular file"));
|
||||||
|
|
|
@ -134,7 +134,7 @@ file_save (Gimp *gimp,
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (g_file_info_get_file_type (info) != G_FILE_TYPE_REGULAR)
|
if (g_file_info_get_attribute_uint32 (info, G_FILE_ATTRIBUTE_STANDARD_TYPE) != G_FILE_TYPE_REGULAR)
|
||||||
{
|
{
|
||||||
g_set_error_literal (error, G_FILE_ERROR, G_FILE_ERROR_FAILED,
|
g_set_error_literal (error, G_FILE_ERROR, G_FILE_ERROR_FAILED,
|
||||||
_("Not a regular file"));
|
_("Not a regular file"));
|
||||||
|
|
|
@ -96,8 +96,8 @@ icon_themes_init (Gimp *gimp)
|
||||||
while ((info = g_file_enumerator_next_file (enumerator,
|
while ((info = g_file_enumerator_next_file (enumerator,
|
||||||
NULL, NULL)))
|
NULL, NULL)))
|
||||||
{
|
{
|
||||||
if (! g_file_info_get_is_hidden (info) &&
|
if (! g_file_info_get_attribute_boolean (info, G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN) &&
|
||||||
g_file_info_get_file_type (info) == G_FILE_TYPE_DIRECTORY)
|
g_file_info_get_attribute_uint32 (info, G_FILE_ATTRIBUTE_STANDARD_TYPE) == G_FILE_TYPE_DIRECTORY)
|
||||||
{
|
{
|
||||||
GFile *file;
|
GFile *file;
|
||||||
GFile *index_theme;
|
GFile *index_theme;
|
||||||
|
|
|
@ -595,7 +595,7 @@ splash_image_load_from_file (GFile *file,
|
||||||
{
|
{
|
||||||
const gchar *content_type;
|
const gchar *content_type;
|
||||||
|
|
||||||
content_type = g_file_info_get_content_type (info);
|
content_type = g_file_info_get_attribute_string (info, G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE);
|
||||||
if (content_type)
|
if (content_type)
|
||||||
{
|
{
|
||||||
gchar *mime_type;
|
gchar *mime_type;
|
||||||
|
|
|
@ -511,8 +511,8 @@ themes_theme_paths_notify (GimpExtensionManager *manager,
|
||||||
while ((info = g_file_enumerator_next_file (enumerator,
|
while ((info = g_file_enumerator_next_file (enumerator,
|
||||||
NULL, NULL)))
|
NULL, NULL)))
|
||||||
{
|
{
|
||||||
if (! g_file_info_get_is_hidden (info) &&
|
if (! g_file_info_get_attribute_boolean (info, G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN) &&
|
||||||
g_file_info_get_file_type (info) == G_FILE_TYPE_DIRECTORY)
|
g_file_info_get_attribute_uint32 (info, G_FILE_ATTRIBUTE_STANDARD_TYPE) == G_FILE_TYPE_DIRECTORY)
|
||||||
{
|
{
|
||||||
GFile *file;
|
GFile *file;
|
||||||
const gchar *name;
|
const gchar *name;
|
||||||
|
|
|
@ -170,8 +170,8 @@ gimp_environ_table_load (GimpEnvironTable *environ_table,
|
||||||
while ((info = g_file_enumerator_next_file (enumerator,
|
while ((info = g_file_enumerator_next_file (enumerator,
|
||||||
NULL, NULL)))
|
NULL, NULL)))
|
||||||
{
|
{
|
||||||
if (! g_file_info_get_is_hidden (info) &&
|
if (! g_file_info_get_attribute_boolean (info, G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN) &&
|
||||||
g_file_info_get_file_type (info) == G_FILE_TYPE_REGULAR)
|
g_file_info_get_attribute_uint32 (info, G_FILE_ATTRIBUTE_STANDARD_TYPE) == G_FILE_TYPE_REGULAR)
|
||||||
{
|
{
|
||||||
GFile *file = g_file_enumerator_get_child (enumerator, info);
|
GFile *file = g_file_enumerator_get_child (enumerator, info);
|
||||||
|
|
||||||
|
|
|
@ -163,8 +163,8 @@ gimp_interpreter_db_load (GimpInterpreterDB *db,
|
||||||
while ((info = g_file_enumerator_next_file (enumerator,
|
while ((info = g_file_enumerator_next_file (enumerator,
|
||||||
NULL, NULL)))
|
NULL, NULL)))
|
||||||
{
|
{
|
||||||
if (! g_file_info_get_is_hidden (info) &&
|
if (! g_file_info_get_attribute_boolean (info, G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN) &&
|
||||||
g_file_info_get_file_type (info) == G_FILE_TYPE_REGULAR)
|
g_file_info_get_attribute_uint32 (info, G_FILE_ATTRIBUTE_STANDARD_TYPE) == G_FILE_TYPE_REGULAR)
|
||||||
{
|
{
|
||||||
GFile *file = g_file_enumerator_get_child (enumerator, info);
|
GFile *file = g_file_enumerator_get_child (enumerator, info);
|
||||||
|
|
||||||
|
|
|
@ -683,7 +683,7 @@ file_check_single_magic (const gchar *offset,
|
||||||
if (! info)
|
if (! info)
|
||||||
return FILE_MATCH_NONE;
|
return FILE_MATCH_NONE;
|
||||||
|
|
||||||
fileval = g_file_info_get_size (info);
|
fileval = g_file_info_get_attribute_uint64 (info, G_FILE_ATTRIBUTE_STANDARD_SIZE);
|
||||||
g_object_unref (info);
|
g_object_unref (info);
|
||||||
}
|
}
|
||||||
else if (offs >= 0 &&
|
else if (offs >= 0 &&
|
||||||
|
|
|
@ -269,7 +269,7 @@ gimp_plug_in_manager_search_directory (GimpPlugInManager *manager,
|
||||||
{
|
{
|
||||||
GFile *child;
|
GFile *child;
|
||||||
|
|
||||||
if (g_file_info_get_is_hidden (info))
|
if (g_file_info_get_attribute_boolean (info, G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN))
|
||||||
{
|
{
|
||||||
g_object_unref (info);
|
g_object_unref (info);
|
||||||
continue;
|
continue;
|
||||||
|
@ -305,7 +305,7 @@ gimp_plug_in_manager_search_directory (GimpPlugInManager *manager,
|
||||||
gchar *file_name;
|
gchar *file_name;
|
||||||
char *ext;
|
char *ext;
|
||||||
|
|
||||||
if (g_file_info_get_is_hidden (info2))
|
if (g_file_info_get_attribute_boolean (info2, G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN))
|
||||||
{
|
{
|
||||||
g_object_unref (info2);
|
g_object_unref (info2);
|
||||||
continue;
|
continue;
|
||||||
|
|
|
@ -420,13 +420,13 @@ gimp_font_factory_recursive_add_fontdir (FcConfig *config,
|
||||||
GFileType file_type;
|
GFileType file_type;
|
||||||
GFile *child;
|
GFile *child;
|
||||||
|
|
||||||
if (g_file_info_get_is_hidden (info))
|
if (g_file_info_get_attribute_boolean (info, G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN))
|
||||||
{
|
{
|
||||||
g_object_unref (info);
|
g_object_unref (info);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
file_type = g_file_info_get_file_type (info);
|
file_type = g_file_info_get_attribute_uint32 (info, G_FILE_ATTRIBUTE_STANDARD_TYPE);
|
||||||
child = g_file_enumerator_get_child (enumerator, info);
|
child = g_file_enumerator_get_child (enumerator, info);
|
||||||
|
|
||||||
if (file_type == G_FILE_TYPE_DIRECTORY)
|
if (file_type == G_FILE_TYPE_DIRECTORY)
|
||||||
|
|
|
@ -257,7 +257,7 @@ gimp_help_get_installed_languages (void)
|
||||||
while ((info = g_file_enumerator_next_file (enumerator,
|
while ((info = g_file_enumerator_next_file (enumerator,
|
||||||
NULL, NULL)))
|
NULL, NULL)))
|
||||||
{
|
{
|
||||||
if (g_file_info_get_file_type (info) == G_FILE_TYPE_DIRECTORY)
|
if (g_file_info_get_attribute_uint32 (info, G_FILE_ATTRIBUTE_STANDARD_TYPE) == G_FILE_TYPE_DIRECTORY)
|
||||||
{
|
{
|
||||||
GFile *locale_dir;
|
GFile *locale_dir;
|
||||||
GFile *file;
|
GFile *file;
|
||||||
|
|
|
@ -338,7 +338,7 @@ gimp_image_prop_view_label_set_filesize (GtkWidget *label,
|
||||||
|
|
||||||
if (info)
|
if (info)
|
||||||
{
|
{
|
||||||
goffset size = g_file_info_get_size (info);
|
goffset size = g_file_info_get_attribute_uint64 (info, G_FILE_ATTRIBUTE_STANDARD_SIZE);
|
||||||
gchar *str = g_format_size (size);
|
gchar *str = g_format_size (size);
|
||||||
|
|
||||||
gtk_label_set_text (GTK_LABEL (label), str);
|
gtk_label_set_text (GTK_LABEL (label), str);
|
||||||
|
|
|
@ -216,7 +216,7 @@ gimp_color_profile_new_from_file (GFile *file,
|
||||||
{
|
{
|
||||||
GInputStream *input;
|
GInputStream *input;
|
||||||
|
|
||||||
length = g_file_info_get_size (info);
|
length = g_file_info_get_attribute_uint64 (info, G_FILE_ATTRIBUTE_STANDARD_SIZE);
|
||||||
data = g_malloc (length);
|
data = g_malloc (length);
|
||||||
|
|
||||||
g_object_unref (info);
|
g_object_unref (info);
|
||||||
|
|
|
@ -381,10 +381,10 @@ gimp_module_db_load_directory (GimpModuleDB *db,
|
||||||
|
|
||||||
while ((info = g_file_enumerator_next_file (enumerator, NULL, NULL)))
|
while ((info = g_file_enumerator_next_file (enumerator, NULL, NULL)))
|
||||||
{
|
{
|
||||||
GFileType file_type = g_file_info_get_file_type (info);
|
GFileType file_type = g_file_info_get_attribute_uint32 (info, G_FILE_ATTRIBUTE_STANDARD_TYPE);
|
||||||
|
|
||||||
if (file_type == G_FILE_TYPE_REGULAR &&
|
if (file_type == G_FILE_TYPE_REGULAR &&
|
||||||
! g_file_info_get_is_hidden (info))
|
! g_file_info_get_attribute_boolean (info, G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN))
|
||||||
{
|
{
|
||||||
GFile *child = g_file_enumerator_get_child (enumerator, info);
|
GFile *child = g_file_enumerator_get_child (enumerator, info);
|
||||||
|
|
||||||
|
|
|
@ -556,7 +556,7 @@ gimp_thumb_file_test (const gchar *filename,
|
||||||
G_FILE_ATTRIBUTE_TIME_MODIFIED);
|
G_FILE_ATTRIBUTE_TIME_MODIFIED);
|
||||||
|
|
||||||
if (size)
|
if (size)
|
||||||
*size = g_file_info_get_size (info);
|
*size = g_file_info_get_attribute_uint64 (info, G_FILE_ATTRIBUTE_STANDARD_SIZE);
|
||||||
|
|
||||||
if (err_no)
|
if (err_no)
|
||||||
*err_no = 0;
|
*err_no = 0;
|
||||||
|
|
|
@ -1027,7 +1027,7 @@ get_file_info (GFile *file)
|
||||||
|
|
||||||
if (info)
|
if (info)
|
||||||
{
|
{
|
||||||
size = g_file_info_get_size (info);
|
size = g_file_info_get_attribute_uint64 (info, G_FILE_ATTRIBUTE_STANDARD_SIZE);
|
||||||
|
|
||||||
g_object_unref (info);
|
g_object_unref (info);
|
||||||
}
|
}
|
||||||
|
|
|
@ -659,7 +659,7 @@ get_file_size (GFile *file,
|
||||||
NULL, error);
|
NULL, error);
|
||||||
if (info)
|
if (info)
|
||||||
{
|
{
|
||||||
size = g_file_info_get_size (info);
|
size = g_file_info_get_attribute_uint64 (info, G_FILE_ATTRIBUTE_STANDARD_SIZE);
|
||||||
|
|
||||||
g_object_unref (info);
|
g_object_unref (info);
|
||||||
}
|
}
|
||||||
|
|
|
@ -706,7 +706,7 @@ get_file_info (GFile *file)
|
||||||
|
|
||||||
if (info)
|
if (info)
|
||||||
{
|
{
|
||||||
size = g_file_info_get_size (info);
|
size = g_file_info_get_attribute_uint64 (info, G_FILE_ATTRIBUTE_STANDARD_SIZE);
|
||||||
|
|
||||||
g_object_unref (info);
|
g_object_unref (info);
|
||||||
}
|
}
|
||||||
|
|
|
@ -392,7 +392,7 @@ send_image (GObject *config,
|
||||||
while ((info = g_file_enumerator_next_file (enumerator,
|
while ((info = g_file_enumerator_next_file (enumerator,
|
||||||
NULL, NULL)))
|
NULL, NULL)))
|
||||||
{
|
{
|
||||||
if (g_file_info_get_file_type (info) == G_FILE_TYPE_REGULAR)
|
if (g_file_info_get_attribute_uint32 (info, G_FILE_ATTRIBUTE_STANDARD_TYPE) == G_FILE_TYPE_REGULAR)
|
||||||
{
|
{
|
||||||
GFile *file = g_file_enumerator_get_child (enumerator, info);
|
GFile *file = g_file_enumerator_get_child (enumerator, info);
|
||||||
g_file_delete (file, NULL, NULL);
|
g_file_delete (file, NULL, NULL);
|
||||||
|
|
|
@ -132,7 +132,7 @@ background_jpeg_save (PreviewPersistent *pp)
|
||||||
|
|
||||||
if (info)
|
if (info)
|
||||||
{
|
{
|
||||||
goffset size = g_file_info_get_size (info);
|
goffset size = g_file_info_get_attribute_uint64 (info, G_FILE_ATTRIBUTE_STANDARD_SIZE);
|
||||||
gchar *size_text;
|
gchar *size_text;
|
||||||
|
|
||||||
size_text = g_format_size (size);
|
size_text = g_format_size (size);
|
||||||
|
|
|
@ -571,7 +571,7 @@ tiff_io_get_file_size (thandle_t handle)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
size = g_file_info_get_size (info);
|
size = g_file_info_get_attribute_uint64 (info, G_FILE_ATTRIBUTE_STANDARD_SIZE);
|
||||||
g_object_unref (info);
|
g_object_unref (info);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1110,10 +1110,10 @@ fractalexplorer_list_load_all (const gchar *explorer_path)
|
||||||
|
|
||||||
while ((info = g_file_enumerator_next_file (enumerator, NULL, NULL)))
|
while ((info = g_file_enumerator_next_file (enumerator, NULL, NULL)))
|
||||||
{
|
{
|
||||||
GFileType file_type = g_file_info_get_file_type (info);
|
GFileType file_type = g_file_info_get_attribute_uint32 (info, G_FILE_ATTRIBUTE_STANDARD_TYPE);
|
||||||
|
|
||||||
if (file_type == G_FILE_TYPE_REGULAR &&
|
if (file_type == G_FILE_TYPE_REGULAR &&
|
||||||
! g_file_info_get_is_hidden (info))
|
! g_file_info_get_attribute_boolean (info, G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN))
|
||||||
{
|
{
|
||||||
fractalexplorerOBJ *fractalexplorer;
|
fractalexplorerOBJ *fractalexplorer;
|
||||||
GFile *child;
|
GFile *child;
|
||||||
|
|
|
@ -1772,10 +1772,10 @@ gflares_list_load_all (void)
|
||||||
|
|
||||||
while ((info = g_file_enumerator_next_file (enumerator, NULL, NULL)))
|
while ((info = g_file_enumerator_next_file (enumerator, NULL, NULL)))
|
||||||
{
|
{
|
||||||
GFileType file_type = g_file_info_get_file_type (info);
|
GFileType file_type = g_file_info_get_attribute_uint32 (info, G_FILE_ATTRIBUTE_STANDARD_TYPE);
|
||||||
|
|
||||||
if (file_type == G_FILE_TYPE_REGULAR &&
|
if (file_type == G_FILE_TYPE_REGULAR &&
|
||||||
! g_file_info_get_is_hidden (info))
|
! g_file_info_get_attribute_boolean (info, G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN))
|
||||||
{
|
{
|
||||||
GFlare *gflare;
|
GFlare *gflare;
|
||||||
GFile *child;
|
GFile *child;
|
||||||
|
|
|
@ -258,7 +258,7 @@ gimp_help_locale_parse (GimpHelpLocale *locale,
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
size = g_file_info_get_size (info);
|
size = g_file_info_get_attribute_uint64 (info, G_FILE_ATTRIBUTE_STANDARD_SIZE);
|
||||||
|
|
||||||
g_object_unref (info);
|
g_object_unref (info);
|
||||||
}
|
}
|
||||||
|
|
|
@ -316,11 +316,11 @@ script_fu_load_directory (GFile *directory)
|
||||||
|
|
||||||
while ((info = g_file_enumerator_next_file (enumerator, NULL, NULL)))
|
while ((info = g_file_enumerator_next_file (enumerator, NULL, NULL)))
|
||||||
{
|
{
|
||||||
GFileType file_type = g_file_info_get_file_type (info);
|
GFileType file_type = g_file_info_get_attribute_uint32 (info, G_FILE_ATTRIBUTE_STANDARD_TYPE);
|
||||||
|
|
||||||
if ((file_type == G_FILE_TYPE_REGULAR ||
|
if ((file_type == G_FILE_TYPE_REGULAR ||
|
||||||
file_type == G_FILE_TYPE_DIRECTORY) &&
|
file_type == G_FILE_TYPE_DIRECTORY) &&
|
||||||
! g_file_info_get_is_hidden (info))
|
! g_file_info_get_attribute_boolean (info, G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN))
|
||||||
{
|
{
|
||||||
GFile *child = g_file_enumerator_get_child (enumerator, info);
|
GFile *child = g_file_enumerator_get_child (enumerator, info);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue