Your message dated Sun, 3 Oct 2010 16:43:35 +0200 with message-id <20101003144335.GM10564@radis.liafa.jussieu.fr> and subject line Re: Bug#598854: unblock: file-roller/2.30.2-2 has caused the Debian Bug report #598854, regarding unblock: file-roller/2.30.2-2 to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact owner@bugs.debian.org immediately.) -- 598854: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=598854 Debian Bug Tracking System Contact owner@bugs.debian.org with problems
--- Begin Message ---
- To: submit@bugs.debian.org
- Subject: unblock: file-roller/2.30.2-2
- From: Josselin Mouette <joss@debian.org>
- Date: Sat, 02 Oct 2010 18:34:14 +0200
- Message-id: <[🔎] 1286037254.6455.67.camel@tomoyo>
Package: release.debian.org Severity: normal User: release.debian.org@packages.debian.org Usertags: freeze-exception Please unblock hicolor-icon-theme for squeeze. file-roller (2.30.2-2) unstable; urgency=low . * Only suggest lzma. Closes: #595117. * Include some patches sitting in the upstream repository: + 01_rar_crasher.patch: fix a crasher with the rar command. + 02_escape_newlines.patch: handle the case of files with newlines in their name. + 03_tar_xz_update.patch: update .tar.xz files without losing the data in them. Closes: #594839. I’m attaching the patches. The third issue is arguably RC (data loss). Cheers, -- .''`. Josselin Mouette : :' : `. `' “If you behave this way because you are blackmailed by someone, `- […] I will see what I can do for you.” -- Jörg SchillingFrom bac5d03a29a411c79e0d838d48c404900d30066d Mon Sep 17 00:00:00 2001 From: Paolo Bacchilega <paobac@src.gnome.org> Date: Fri, 25 Jun 2010 10:45:32 +0000 Subject: [rar] fixed seg fault when there is an extra info line in the output --- diff --git a/src/fr-command-rar.c b/src/fr-command-rar.c index 482ab57..2c42ba4 100644 --- a/src/fr-command-rar.c +++ b/src/fr-command-rar.c @@ -117,6 +117,59 @@ process_line (char *line, return; } + if (! rar_comm->odd_line) { + FileData *fdata; + + fdata = rar_comm->fdata; + + /* read file info. */ + + fields = split_line (line, 6); + if (g_strv_length (fields) < 6) { + /* wrong line format, treat this line as a filename line */ + g_strfreev (fields); + file_data_free (rar_comm->fdata); + rar_comm->fdata = NULL; + rar_comm->odd_line = TRUE; + } + else { + if ((strcmp (fields[2], "<->") == 0) + || (strcmp (fields[2], "<--") == 0)) + { + /* ignore files that span more volumes */ + + file_data_free (rar_comm->fdata); + rar_comm->fdata = NULL; + } + else { + fdata->size = g_ascii_strtoull (fields[0], NULL, 10); + fdata->modified = mktime_from_string (fields[3], fields[4]); + + if ((fields[5][1] == 'D') || (fields[5][0] == 'd')) { + char *tmp; + + tmp = fdata->full_path; + fdata->full_path = g_strconcat (fdata->full_path, "/", NULL); + + fdata->original_path = g_strdup (fdata->original_path); + fdata->free_original_path = TRUE; + + g_free (tmp); + + fdata->name = dir_name_from_path (fdata->full_path); + fdata->dir = TRUE; + } + else + fdata->name = g_strdup (file_name_from_path (fdata->full_path)); + + fr_command_add_file (comm, fdata); + rar_comm->fdata = NULL; + } + + g_strfreev (fields); + } + } + if (rar_comm->odd_line) { FileData *fdata; @@ -141,48 +194,7 @@ process_line (char *line, fdata->path = remove_level_from_path (fdata->full_path); } else { - FileData *fdata; - - fdata = rar_comm->fdata; - - /* read file info. */ - - fields = split_line (line, 6); - - if ((strcmp (fields[2], "<->") == 0) - || (strcmp (fields[2], "<--") == 0)) - { - /* ignore files that span more volumes */ - - file_data_free (rar_comm->fdata); - rar_comm->fdata = NULL; - } - else { - fdata->size = g_ascii_strtoull (fields[0], NULL, 10); - fdata->modified = mktime_from_string (fields[3], fields[4]); - - if ((fields[5][1] == 'D') || (fields[5][0] == 'd')) { - char *tmp; - - tmp = fdata->full_path; - fdata->full_path = g_strconcat (fdata->full_path, "/", NULL); - - fdata->original_path = g_strdup (fdata->original_path); - fdata->free_original_path = TRUE; - - g_free (tmp); - - fdata->name = dir_name_from_path (fdata->full_path); - fdata->dir = TRUE; - } - else - fdata->name = g_strdup (file_name_from_path (fdata->full_path)); - - fr_command_add_file (comm, fdata); - rar_comm->fdata = NULL; - } - g_strfreev (fields); } rar_comm->odd_line = ! rar_comm->odd_line; -- cgit v0.8.3.1From 2194eddd71a01f178defa1137d7fab01acedf44b Mon Sep 17 00:00:00 2001 From: Paolo Bacchilega <paobac@src.gnome.org> Date: Tue, 06 Jul 2010 07:31:15 +0000 Subject: escape new lines in filenames when saving the file list to a file --- diff --git a/src/fr-archive.c b/src/fr-archive.c index ff71e92..83d0889 100644 --- a/src/fr-archive.c +++ b/src/fr-archive.c @@ -1160,12 +1160,17 @@ save_list_to_temp_file (GList *file_list, for (scan = file_list; scan != NULL; scan = scan->next) { char *filename = scan->data; + filename = str_substitute (filename, "\n", "\\n"); if ((g_output_stream_write (G_OUTPUT_STREAM (ostream), filename, strlen (filename), NULL, error) < 0) || (g_output_stream_write (G_OUTPUT_STREAM (ostream), "\n", 1, NULL, error) < 0)) { error_occurred = TRUE; - break; } + + g_free (filename); + + if (error_occurred) + break; } if (! error_occurred && ! g_output_stream_close (G_OUTPUT_STREAM (ostream), NULL, error)) error_occurred = TRUE; -- cgit v0.8.3.1From c668bfe6175ed0891dd2a42bfe590a8adf7be8de Mon Sep 17 00:00:00 2001 From: Paolo Bacchilega <paobac@src.gnome.org> Date: Fri, 03 Sep 2010 18:09:04 +0000 Subject: fixed update of files in .tar.xz archives [bug #628717] --- diff --git a/src/fr-command-tar.c b/src/fr-command-tar.c index 53ab601..650a197 100644 --- a/src/fr-command-tar.c +++ b/src/fr-command-tar.c @@ -769,7 +769,7 @@ get_uncompressed_name (FrCommandTar *c_tar, /* X.tar.xz --> X.tar * (There doesn't seem to be a shorthand suffix) */ if (file_extension_is (e_filename, ".tar.xz")) - new_name[l - 5] = 0; + new_name[l - 3] = 0; } else if (is_mime_type (comm->mime_type, "application/x-lzop-compressed-tar")) { /* X.tzo --> X.tar -- cgit v0.8.3.1Attachment: signature.asc
Description: This is a digitally signed message part
--- End Message ---
--- Begin Message ---
- To: Josselin Mouette <joss@debian.org>, 598854-done@bugs.debian.org
- Subject: Re: Bug#598854: unblock: file-roller/2.30.2-2
- From: Julien Cristau <jcristau@debian.org>
- Date: Sun, 3 Oct 2010 16:43:35 +0200
- Message-id: <20101003144335.GM10564@radis.liafa.jussieu.fr>
- In-reply-to: <[🔎] 1286037254.6455.67.camel@tomoyo>
- References: <[🔎] 1286037254.6455.67.camel@tomoyo>
On Sat, Oct 2, 2010 at 18:34:14 +0200, Josselin Mouette wrote: > file-roller (2.30.2-2) unstable; urgency=low Unblocked. Cheers, JulienAttachment: signature.asc
Description: Digital signature
--- End Message ---