Author: colossus
Date: 2008-10-22 08:23:28 +0000 (Wed, 22 Oct 2008)
New Revision: 28353

Modified:
   xarchiver/trunk/src/archive.c
   xarchiver/trunk/src/tar.c
Log:
Restored xa_watch_child in xa_run_command, I wonder why it's needed if it's 
already in a function called by xa_run_command().
Fixed mv error message when copy/extracting from tar-compressed archives.


Modified: xarchiver/trunk/src/archive.c
===================================================================
--- xarchiver/trunk/src/archive.c       2008-10-22 07:22:09 UTC (rev 28352)
+++ xarchiver/trunk/src/archive.c       2008-10-22 08:23:28 UTC (rev 28353)
@@ -112,7 +112,8 @@
        else
                g_io_add_watch (ioc, 
G_IO_IN|G_IO_PRI|G_IO_ERR|G_IO_HUP|G_IO_NVAL,xa_process_output_from_command_line,archive);
 
-       g_child_watch_add_full (G_PRIORITY_LOW,archive->child_pid, 
(GChildWatchFunc)xa_watch_child,archive,NULL);
+       if (archive->parse_output)
+               g_child_watch_add_full (G_PRIORITY_LOW,archive->child_pid, 
(GChildWatchFunc)xa_watch_child,archive,NULL);
 
        err_ioc = g_io_channel_unix_new (archive->error_fd);
        g_io_channel_set_encoding (err_ioc,locale,NULL);
@@ -311,6 +312,7 @@
 void xa_delete_temp_directory (XArchive *archive,gboolean flag)
 {
        gchar *command = g_strconcat("rm -rf ",archive->tmp,NULL);
+       archive->parse_output = 0;
        xa_spawn_async_process(archive,command);
        g_free(command);
 }
@@ -388,6 +390,7 @@
                }
                _commands = _commands->next;
        }
+       xa_watch_child (archive->child_pid, status, archive);
        if (xa_main_window)
                xa_set_button_state 
(1,1,1,1,archive->can_add,archive->can_extract,archive->has_sfx,archive->has_test,archive->has_properties,1,1);
 

Modified: xarchiver/trunk/src/tar.c
===================================================================
--- xarchiver/trunk/src/tar.c   2008-10-22 07:22:09 UTC (rev 28352)
+++ xarchiver/trunk/src/tar.c   2008-10-22 08:23:28 UTC (rev 28353)
@@ -455,7 +455,7 @@
                                                                                
" --no-wildcards -C ",
                                                                                
archive->tmp," ",files_to_extract,NULL);
        list = g_slist_append(list,command);
-       if (archive->extraction_path != NULL)
+       if (strcmp(archive->extraction_path,archive->tmp))
        {
                archive->working_dir = g_strdup(archive->tmp);
                command = g_strconcat ("mv -f ",files_to_extract," 
",archive->extraction_path,NULL);

_______________________________________________
Xfce4-commits mailing list
Xfce4-commits@xfce.org
http://foo-projects.org/mailman/listinfo/xfce4-commits

Reply via email to