diff --git a/capplets/theme-switcher/ChangeLog b/capplets/theme-switcher/ChangeLog index 747900a42..f9d675d8b 100644 --- a/capplets/theme-switcher/ChangeLog +++ b/capplets/theme-switcher/ChangeLog @@ -1,3 +1,10 @@ +2004-10-27 Sebastien Bacher + + * gnome-theme-installer.c: (transfer_done_targz_idle_cb), + (transfer_done_tarbz2_idle_cb): * + patch by Rajkumar to fix the themes + installation with the non GNU versions of tar (Closes: #114553). + 2004-10-27 Sebastien Bacher * gnome-theme-save.c: (setup_directory_structure): diff --git a/capplets/theme-switcher/gnome-theme-installer.c b/capplets/theme-switcher/gnome-theme-installer.c index caf3fb3f1..1bb23d843 100644 --- a/capplets/theme-switcher/gnome-theme-installer.c +++ b/capplets/theme-switcher/gnome-theme-installer.c @@ -45,8 +45,8 @@ transfer_done_targz_idle_cb (gpointer data) gchar *path = data; /* this should be something more clever and nonblocking */ - command = g_strdup_printf ("sh -c 'gzip -d -c < \"%s\" | tar xf - -C \"%s/.themes\"'", - path, g_get_home_dir ()); + command = g_strdup_printf ("sh -c 'cd \"%s/.themes\"; gzip -d -c < \"%s\" | tar xf -'", + g_get_home_dir (), path); if (g_spawn_command_line_sync (command, NULL, NULL, &status, NULL) && status == 0) gnome_vfs_unlink (path); g_free (command); @@ -74,8 +74,8 @@ transfer_done_tarbz2_idle_cb (gpointer data) gchar *path = data; /* this should be something more clever and nonblocking */ - command = g_strdup_printf ("sh -c 'bzip2 -d -c < \"%s\" | tar xf - -C \"%s/.themes\"'", - path, g_get_home_dir ()); + command = g_strdup_printf ("sh -c 'cd \"%s/.themes\"; bzip2 -d -c < \"%s\" | tar xf -'", + g_get_home_dir (), path); if (g_spawn_command_line_sync (command, NULL, NULL, &status, NULL) && status == 0) gnome_vfs_unlink (path); g_free (command);