[Xfce4-commits] r22626 - xarchiver/trunk/src
Giuseppe Torelli
colossus at xfce.org
Wed Aug 2 08:35:56 UTC 2006
Author: colossus
Date: 2006-08-02 08:35:54 +0000 (Wed, 02 Aug 2006)
New Revision: 22626
Modified:
xarchiver/trunk/src/callbacks.c
xarchiver/trunk/src/extract_dialog.c
Log:
Fixed missed single extraction from ISO images with DnD. Thanks to baze for reporting this.
Modified: xarchiver/trunk/src/callbacks.c
===================================================================
--- xarchiver/trunk/src/callbacks.c 2006-08-02 08:08:23 UTC (rev 22625)
+++ xarchiver/trunk/src/callbacks.c 2006-08-02 08:35:54 UTC (rev 22626)
@@ -578,9 +578,8 @@
void xa_about (GtkMenuItem *menuitem, gpointer user_data)
{
static GtkWidget *about = NULL;
- const char *authors[] = {"\nDeveloper:\nGiuseppe Torelli - Colossus <colossus73 at gmail.com>\n",NULL};
- const char *documenters[] = {"\nSpecial thanks to Bjoern Martensen for discovering\nmany bugs in the Xarchiver 0.3.9svn code.\n\nThanks to:\nBenedikt Meurer\nStephan Arts\nEnrico Troeger\nSalvatore Santagati\nUracile for the stunning logo\nThe people of gtk-app-devel-list.", NULL};
- /* const char *translators[] = {"Enrico Troeger\nStavros Giannouris\nPiarres Beobide\nJari Rahkonen\nPierrick Le Brun\nYuval Tanny\nSZERVÑC Attila\nDaichi Kawahata\nStephan Arts\nSzymon Kałasz\nAndrey Fedoseev\nDaniel Nylander\nCosmo Chene", NULL}; */
+ const char *authors[] = {"\nDevelopers:\nGiuseppe Torelli - Colossus <colossus73 at gmail.com>\nSalvatore Santagati for the ISO support. <salvatore.santagati at gmail.com>\n",NULL};
+ const char *documenters[] = {"\nSpecial thanks to Bjoern Martensen for discovering\nmany bugs in the Xarchiver development code.\n\nThanks to:\nBenedikt Meurer\nStephan Arts\nEnrico Troeger\nUracile for the stunning logo\nThe people of gtk-app-devel-list.", NULL};
if (about != NULL)
{
gtk_window_present (GTK_WINDOW (about));
@@ -1769,7 +1768,7 @@
fm_path = g_realloc (fm_path, fm_path_len + 1);
fm_path[fm_path_len] = '\0';
no_uri_path = g_filename_from_uri ( (gchar*)fm_path, NULL, NULL );
- //g_message ("%s - %s",fm_path,no_uri_path);
+ /* g_message ("%s - %s",fm_path,no_uri_path); */
g_free ( fm_path );
if (no_uri_path == NULL)
{
Modified: xarchiver/trunk/src/extract_dialog.c
===================================================================
--- xarchiver/trunk/src/extract_dialog.c 2006-08-02 08:08:23 UTC (rev 22625)
+++ xarchiver/trunk/src/extract_dialog.c 2006-08-02 08:35:54 UTC (rev 22626)
@@ -533,44 +533,12 @@
if ( command != NULL )
return command;
}
- /* Here we take care of the selected files only */
else
{
- /* ISO extraction is different from the other type of archives */
- if (archive->type == XARCHIVETYPE_ISO)
- {
- GList *row_list = NULL;
- selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW (treeview1) );
- row_list = gtk_tree_selection_get_selected_rows (selection, &model);
- while (row_list)
- {
- gtk_tree_model_get_iter(model, &iter, row_list->data);
- gtk_tree_model_get (model, &iter,
- 0, &name,
- 1, &permissions,
- 2, &file_size,
- 4, &file_offset,
- -1);
- gtk_tree_path_free (row_list->data);
-
- xa_extract_single_iso_file (archive, permissions, extract_path, name , file_size, file_offset );
- g_free (name);
- g_free (permissions);
- row_list = row_list->next;
- }
- g_list_free (row_list);
- xa_set_button_state (1,1,0,1,1);
- OffTooltipPadlock();
- Update_StatusBar ( _("Operation completed.") );
- }
- /* Let's handle the other archive types */
- else
- {
- names = g_string_new ( " " );
- gtk_tree_selection_selected_foreach (selection, (GtkTreeSelectionForeachFunc) ConcatenateFileNames, names );
- command = xa_extract_single_files ( archive , names, extract_path );
- g_string_free (names, TRUE);
- }
+ names = g_string_new ( " " );
+ gtk_tree_selection_selected_foreach (selection, (GtkTreeSelectionForeachFunc) ConcatenateFileNames, names );
+ command = xa_extract_single_files ( archive , names, extract_path );
+ g_string_free (names, TRUE);
}
}
}
@@ -693,6 +661,37 @@
archive->escaped_path , " " , path , files->str, NULL );
break;
+ case XARCHIVETYPE_ISO:
+ {
+ GList *row_list = NULL;
+ GtkTreeSelection *selection;
+
+ selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW (treeview1) );
+ row_list = gtk_tree_selection_get_selected_rows (selection, &model);
+ while (row_list)
+ {
+ gtk_tree_model_get_iter(model, &iter, row_list->data);
+ gtk_tree_model_get (model, &iter,
+ 0, &name,
+ 1, &permissions,
+ 2, &file_size,
+ 4, &file_offset,
+ -1);
+ gtk_tree_path_free (row_list->data);
+
+ xa_extract_single_iso_file (archive, permissions, extract_path, name , file_size, file_offset );
+ g_free (name);
+ g_free (permissions);
+ row_list = row_list->next;
+ }
+ g_list_free (row_list);
+ xa_set_button_state (1,1,0,1,1);
+ OffTooltipPadlock();
+ Update_StatusBar ( _("Operation completed.") );
+ command = NULL;
+ }
+ break;
+
default:
command = NULL;
}
More information about the Xfce4-commits
mailing list