Allow setting G_FILE_ATTRIBUTE_TYPE_INVALID attributes in GFileInfo

This is used to unset an attribute in g_file_set_attributes_from_info.
This commit is contained in:
Alexander Larsson 2009-06-25 09:18:01 +02:00
parent 019e8c808f
commit d884e509db
2 changed files with 8 additions and 1 deletions

View File

@ -461,6 +461,9 @@ _g_file_attribute_value_as_string (const GFileAttributeValue *attr)
((GTypeInstance *) attr->u.obj),
attr->u.obj);
break;
case G_FILE_ATTRIBUTE_TYPE_INVALID:
str = g_strdup ("<unset>");
break;
default:
g_warning ("Invalid type in GFileInfo attribute");
str = g_strdup ("<invalid>");
@ -693,6 +696,10 @@ _g_file_attribute_value_set_from_pointer (GFileAttributeValue *value,
case G_FILE_ATTRIBUTE_TYPE_INT64:
value->u.int64 = *(gint64 *)value_p;
break;
case G_FILE_ATTRIBUTE_TYPE_INVALID:
break;
default:
g_warning ("Unknown type specified in g_file_info_set_attribute\n");
break;

View File

@ -566,7 +566,7 @@ g_file_info_list_attributes (GFileInfo *info,
* Gets the attribute type for an attribute key.
*
* Returns: a #GFileAttributeType for the given @attribute, or
* %G_FILE_ATTRIBUTE_TYPE_INVALID if the key is invalid.
* %G_FILE_ATTRIBUTE_TYPE_INVALID if the key is not set.
**/
GFileAttributeType
g_file_info_get_attribute_type (GFileInfo *info,