[file-roller] correctly detect compressed tar archives
- From: Paolo Bacchilega <paobac src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [file-roller] correctly detect compressed tar archives
- Date: Wed, 17 Aug 2016 07:20:53 +0000 (UTC)
commit 4f7986f97aa0de6af6d5b558bde60fd2fb913c25
Author: Paolo Bacchilega <paobac src gnome org>
Date: Wed Aug 17 09:02:42 2016 +0200
correctly detect compressed tar archives
src/fr-archive.c | 9 ++++++++-
1 files changed, 8 insertions(+), 1 deletions(-)
---
diff --git a/src/fr-archive.c b/src/fr-archive.c
index 2fb6162..374cc75 100644
--- a/src/fr-archive.c
+++ b/src/fr-archive.c
@@ -729,7 +729,14 @@ open_archive_buffer_ready_cb (GObject *source_object,
uri = g_file_get_uri (open_data->file);
local_mime_type = g_content_type_guess (uri, (guchar *) open_data->buffer, open_data->buffer_size,
&result_uncertain);
if (! result_uncertain) {
- mime_type = _g_str_get_static (local_mime_type);
+ const char const *mime_type_from_filename;
+
+ /* for example: "application/x-lrzip" --> "application/x-lrzip-compressed-tar" */
+ mime_type_from_filename = _g_mime_type_get_from_filename (open_data->file);
+ if ((mime_type_from_filename != NULL) && g_str_has_prefix (mime_type_from_filename,
local_mime_type) && g_str_has_suffix (mime_type_from_filename, "-compressed-tar"))
+ mime_type = _g_str_get_static (mime_type_from_filename);
+ else
+ mime_type = _g_str_get_static (local_mime_type);
archive = create_archive_to_load_archive (open_data->file, mime_type);
}
if (archive == NULL) {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]