After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 770605 - file-operations: open unsupported archives in another application
file-operations: open unsupported archives in another application
Status: RESOLVED FIXED
Product: nautilus
Classification: Core
Component: general
unspecified
Other All
: Normal normal
: ---
Assigned To: Nautilus Maintainers
Nautilus Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-08-30 15:40 UTC by Razvan Chitu
Modified: 2016-08-30 17:14 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
file-operations: open unsupported archives in another application (4.19 KB, patch)
2016-08-30 15:41 UTC, Razvan Chitu
none Details | Review
file-operations: open unsupported archives in another application (4.38 KB, patch)
2016-08-30 16:33 UTC, Razvan Chitu
none Details | Review
file-operations: open unsupported archives in another application (4.41 KB, patch)
2016-08-30 16:55 UTC, Razvan Chitu
committed Details | Review

Description Razvan Chitu 2016-08-30 15:40:48 UTC
See patch.
Comment 1 Razvan Chitu 2016-08-30 15:41:08 UTC
Created attachment 334452 [details] [review]
file-operations: open unsupported archives in another application

The library used for managing compressed files does not yet support all use
cases such as encrypted archives. In order to fix this, attempt to open
unsupported archives in other applications.
Comment 2 Carlos Soriano 2016-08-30 16:10:03 UTC
Review of attachment 334452 [details] [review]:

::: src/nautilus-file-operations.c
@@ +8264,3 @@
     source_file = autoar_extractor_get_source_file (extractor);
 
+    if (IS_IO_ERROR (error, NOT_SUPPORTED))

you have to abort the job too, no?

::: src/nautilus-operations-ui-manager.c
@@ +528,3 @@
+    if (application)
+    {
+        GtkWidget *dialog;

autoptr?

@@ +539,3 @@
+    return FALSE;
+}
+                                                              GTK_DIALOG_MODAL |

Add a comment here why we need this.
Also add some prefix. "handle_unsuppoirted_file" looks too generic to not clash with a different "handle_unsuported_file", being in a public API. How about handle_unsupported_compressed_file?
Comment 3 Razvan Chitu 2016-08-30 16:33:37 UTC
Created attachment 334458 [details] [review]
file-operations: open unsupported archives in another application

The library used for managing compressed files does not yet support all use
cases such as encrypted archives. In order to fix this, attempt to open
unsupported archives in other applications.
Comment 4 Carlos Soriano 2016-08-30 16:50:52 UTC
Review of attachment 334458 [details] [review]:

Just some nitpicks.

::: src/nautilus-operations-ui-manager.c
@@ +500,3 @@
+{
+    HandleUnsupportedFileData *data;
+} HandleUnsupportedFileData;

initialize to NULL

@@ +509,3 @@
+    {
+        GtkWidget *dialog;
+    HandleUnsupportedFileData *data;

initialize to null

@@ +528,3 @@
+    if (application)
+    {
+        GtkWidget *dialog;

to nULL

@@ +535,3 @@
+    }
+
+

use G_SOURCE_* constants.
Comment 5 Razvan Chitu 2016-08-30 16:55:41 UTC
Created attachment 334460 [details] [review]
file-operations: open unsupported archives in another application

The library used for managing compressed files does not yet support all use
cases such as encrypted archives. In order to fix this, attempt to open
unsupported archives in other applications.
Comment 6 Carlos Soriano 2016-08-30 16:58:22 UTC
Review of attachment 334460 [details] [review]:

perfect, thanks!
Comment 7 Razvan Chitu 2016-08-30 17:14:47 UTC
Attachment 334460 [details] pushed as 1686ce8 - file-operations: open unsupported archives in another application