summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/nautilus-mime-actions.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/nautilus-mime-actions.c b/src/nautilus-mime-actions.c
index 13a6a21bf..5a838a018 100644
--- a/src/nautilus-mime-actions.c
+++ b/src/nautilus-mime-actions.c
@@ -2020,13 +2020,21 @@ activate_activation_uris_ready_callback (GList *files_ignore,
/* Convert the files to the actual activation uri files */
for (l = parameters->locations; l != NULL; l = l->next) {
- char *uri;
+ char *uri = NULL;
+
location = l->data;
/* We want the file for the activation URI since we care
* about the attributes for that, not for the original file.
*/
- uri = nautilus_file_get_activation_uri (location->file);
+ if (nautilus_file_is_symbolic_link (location->file)) {
+ uri = nautilus_file_get_symbolic_link_target_uri (location->file);
+ }
+
+ if (uri == NULL) {
+ uri = nautilus_file_get_activation_uri (location->file);
+ }
+
if (uri != NULL) {
launch_location_update_from_uri (location, uri);
}