1344
1350
gof_file_is_writable (GOFFile *file)
1346
1352
g_return_val_if_fail (GOF_IS_FILE (file), FALSE);
1348
1353
if (file->target_gof && !g_file_equal (file->location, file->target_gof->location)) {
1349
1354
return gof_file_is_writable (file->target_gof);
1350
1355
} else if (file->info != NULL && g_file_info_has_attribute (file->info, G_FILE_ATTRIBUTE_ACCESS_CAN_WRITE)) {
1351
1356
return g_file_info_get_attribute_boolean (file->info, G_FILE_ATTRIBUTE_ACCESS_CAN_WRITE);
1352
1357
} else if (file->has_permissions) {
1357
1362
return TRUE; /* We will just have to assume we can write to the file */