mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-25 23:16:14 +01:00
Add g_file_info_has_namespace
Need this to quickly see if we should set attributes from this GFileInfo in metadata extension.
This commit is contained in:
parent
0ed9201ad2
commit
becf4186e6
@ -484,6 +484,42 @@ g_file_info_has_attribute (GFileInfo *info,
|
|||||||
return value != NULL;
|
return value != NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* g_file_info_has_namespace:
|
||||||
|
* @info: a #GFileInfo.
|
||||||
|
* @name_space: a file attribute namespace.
|
||||||
|
*
|
||||||
|
* Checks if a file info structure has an attribute in the
|
||||||
|
* specified @name_space.
|
||||||
|
*
|
||||||
|
* Returns: %TRUE if @Ginfo has an attribute in @name_space,
|
||||||
|
* %FALSE otherwise.
|
||||||
|
*
|
||||||
|
* Since: 2.22
|
||||||
|
**/
|
||||||
|
gboolean
|
||||||
|
g_file_info_has_namespace (GFileInfo *info,
|
||||||
|
const char *name_space)
|
||||||
|
{
|
||||||
|
GFileAttribute *attrs;
|
||||||
|
guint32 ns_id;
|
||||||
|
int i;
|
||||||
|
|
||||||
|
g_return_val_if_fail (G_IS_FILE_INFO (info), FALSE);
|
||||||
|
g_return_val_if_fail (name_space != NULL, FALSE);
|
||||||
|
|
||||||
|
ns_id = lookup_namespace (name_space);
|
||||||
|
|
||||||
|
attrs = (GFileAttribute *)info->attributes->data;
|
||||||
|
for (i = 0; i < info->attributes->len; i++)
|
||||||
|
{
|
||||||
|
if (GET_NS (attrs[i].attribute) == ns_id)
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* g_file_info_list_attributes:
|
* g_file_info_list_attributes:
|
||||||
* @info: a #GFileInfo.
|
* @info: a #GFileInfo.
|
||||||
|
@ -749,6 +749,8 @@ void g_file_info_copy_into (GFileInfo *src_info,
|
|||||||
GFileInfo *dest_info);
|
GFileInfo *dest_info);
|
||||||
gboolean g_file_info_has_attribute (GFileInfo *info,
|
gboolean g_file_info_has_attribute (GFileInfo *info,
|
||||||
const char *attribute);
|
const char *attribute);
|
||||||
|
gboolean g_file_info_has_namespace (GFileInfo *info,
|
||||||
|
const char *name_space);
|
||||||
char ** g_file_info_list_attributes (GFileInfo *info,
|
char ** g_file_info_list_attributes (GFileInfo *info,
|
||||||
const char *name_space);
|
const char *name_space);
|
||||||
gboolean g_file_info_get_attribute_data (GFileInfo *info,
|
gboolean g_file_info_get_attribute_data (GFileInfo *info,
|
||||||
|
@ -377,6 +377,7 @@ g_file_info_new
|
|||||||
g_file_info_dup
|
g_file_info_dup
|
||||||
g_file_info_copy_into
|
g_file_info_copy_into
|
||||||
g_file_info_has_attribute
|
g_file_info_has_attribute
|
||||||
|
g_file_info_has_namespace
|
||||||
g_file_info_list_attributes
|
g_file_info_list_attributes
|
||||||
g_file_info_get_attribute_type
|
g_file_info_get_attribute_type
|
||||||
g_file_info_remove_attribute
|
g_file_info_remove_attribute
|
||||||
|
Loading…
Reference in New Issue
Block a user