diff options
Diffstat (limited to 'src/file-manager/fm-properties-window.c')
-rw-r--r-- | src/file-manager/fm-properties-window.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/file-manager/fm-properties-window.c b/src/file-manager/fm-properties-window.c index f583e1afe..68707a296 100644 --- a/src/file-manager/fm-properties-window.c +++ b/src/file-manager/fm-properties-window.c @@ -271,6 +271,7 @@ get_target_file_for_original_file (NautilusFile *file) char *uri_to_display; GnomeVFSVolume *volume; GnomeVFSDrive *drive; + NautilusDesktopLink *link; target_file = NULL; if (nautilus_file_has_volume (file)) { @@ -289,7 +290,19 @@ get_target_file_for_original_file (NautilusFile *file) g_free (uri_to_display); } gnome_vfs_drive_unref (drive); - } + } else if (NAUTILUS_IS_DESKTOP_ICON_FILE (file)) { + link = nautilus_desktop_icon_file_get_link (NAUTILUS_DESKTOP_ICON_FILE (file)); + + /* map to linked URI for these types of links */ + uri_to_display = nautilus_desktop_link_get_activation_uri (link); + if (uri_to_display) { + target_file = nautilus_file_get (uri_to_display); + g_free (uri_to_display); + } + + g_object_unref (link); + } + if (target_file != NULL) { return target_file; |