Hello community, here is the log from the commit of package Terminal for openSUSE:Factory checked in at Fri Feb 4 09:25:02 CET 2011. -------- --- Terminal/Terminal.changes 2011-01-17 13:26:06.000000000 +0100 +++ /mounts/work_src_done/STABLE/Terminal/Terminal.changes 2011-02-04 00:00:29.000000000 +0100 @@ -1,0 +2,15 @@ +Thu Feb 3 22:55:18 UTC 2011 - gber@opensuse.org + +- added Terminal-0.4.6-fix-race.patch in order to avoid racing on + the size-changed signal (bxo#6921) + +------------------------------------------------------------------- +Thu Feb 3 19:28:59 UTC 2011 - gber@opensuse.org + +- update to version 0.4.6 + - recognize sftp in urls + - work around deprecated API in vte 0.26 + - bugfixes + - translation updates + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- Terminal-0.4.5.tar.bz2 New: ---- Terminal-0.4.6-fix-race.patch Terminal-0.4.6.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ Terminal.spec ++++++ --- /var/tmp/diff_new_pack.ydqCir/_old 2011-02-04 09:24:40.000000000 +0100 +++ /var/tmp/diff_new_pack.ydqCir/_new 2011-02-04 09:24:40.000000000 +0100 @@ -18,8 +18,8 @@ Name: Terminal -Version: 0.4.5 -Release: 3 +Version: 0.4.6 +Release: 1 License: GPLv2+ Summary: Terminal emulator for the Xfce desktop environment Url: http://goodies.xfce.org/projects/applications/terminal @@ -27,6 +27,8 @@ Source0: %{name}-%{version}.tar.bz2 Source1: %name-rpmlintrc Patch0: Terminal-0.4.5-honor-htmldir.patch +# PATCH-FIX-UPSTREAM Terminal-0.4.6-fix-race.patch bxo#6921 gber@opensuse.org -- Avoids racing on the size-changed signal +Patch1: Terminal-0.4.6-fix-race.patch BuildRequires: intltool BuildRequires: libpng-devel BuildRequires: pkgconfig(dbus-1) @@ -72,6 +74,7 @@ %prep %setup -q %patch0 -p1 +%patch1 -p1 %build xdt-autogen @@ -115,12 +118,13 @@ %{_datadir}/gnome-control-center/default-apps/Terminal-default-apps.xml %dir %{_mandir}/ca %dir %{_mandir}/da +%dir %{_mandir}/el %dir %{_mandir}/gl -%dir %{_mandir}/hr %dir %{_mandir}/id %dir %{_mandir}/pt %dir %{_mandir}/ru %dir %{_mandir}/ug +%dir %{_mandir}/sv %dir %{_mandir}/zh_CN %doc %{_mandir}/*/* ++++++ Terminal-0.4.6-fix-race.patch ++++++ --- a/terminal/terminal-screen.c +++ a/terminal/terminal-screen.c @@ -90,6 +90,7 @@ static gchar *terminal_screen_parse_title (TerminalScreen const gchar *title); static gchar **terminal_screen_get_child_environment (TerminalScreen *screen); static void terminal_screen_update_background (TerminalScreen *screen); +static void terminal_screen_update_background_fast (TerminalScreen *screen); static void terminal_screen_update_binding_backspace (TerminalScreen *screen); static void terminal_screen_update_binding_delete (TerminalScreen *screen); static void terminal_screen_update_colors (TerminalScreen *screen); @@ -141,6 +142,8 @@ struct _TerminalScreen guint session_id; + gulong background_signal_id; + GPid pid; gchar *working_directory; @@ -243,7 +246,6 @@ terminal_screen_init (TerminalScreen *screen) "signal::selection-changed", G_CALLBACK (terminal_screen_vte_selection_changed), screen, "signal::window-title-changed", G_CALLBACK (terminal_screen_vte_window_title_changed), screen, "signal::resize-window", G_CALLBACK (terminal_screen_vte_resize_window), screen, - "swapped-signal::size-allocate", G_CALLBACK (terminal_screen_timer_background), screen, "swapped-signal::style-set", G_CALLBACK (terminal_screen_update_colors), screen, NULL); gtk_box_pack_start (GTK_BOX (screen), screen->terminal, TRUE, TRUE, 0); @@ -712,6 +714,18 @@ terminal_screen_get_child_environment (TerminalScreen *screen) static void +terminal_screen_update_background_fast (TerminalScreen *screen) +{ + if (G_UNLIKELY (screen->background_timer_id == 0)) + { + screen->background_timer_id = g_idle_add_full (G_PRIORITY_LOW, terminal_screen_timer_background, + screen, terminal_screen_timer_background_destroy); + } +} + + + +static void terminal_screen_update_background (TerminalScreen *screen) { if (G_UNLIKELY (screen->background_timer_id != 0)) @@ -1222,9 +1236,25 @@ terminal_screen_timer_background (gpointer user_data) if (G_LIKELY (image != NULL)) g_object_unref (G_OBJECT (image)); g_object_unref (G_OBJECT (loader)); + + /* refresh background on size changes */ + if (screen->background_signal_id == 0) + { + screen->background_signal_id = + g_signal_connect_swapped (G_OBJECT (screen->terminal), "size-allocate", + G_CALLBACK (terminal_screen_update_background_fast), screen); + } } else { + /* stop updating on size changes */ + if (screen->background_signal_id != 0) + { + g_signal_handler_disconnect (G_OBJECT (screen->terminal), screen->background_signal_id); + screen->background_signal_id = 0; + } + + /* WARNING: the causes a resize too! */ vte_terminal_set_background_image (VTE_TERMINAL (screen->terminal), NULL); } @@ -1365,7 +1395,7 @@ terminal_screen_launch_child (TerminalScreen *screen) if (!vte_terminal_fork_command_full (VTE_TERMINAL (screen->terminal), update ? VTE_PTY_DEFAULT : VTE_PTY_NO_LASTLOG | VTE_PTY_NO_UTMP | VTE_PTY_NO_WTMP, - screen->working_directory, argv2, env, + screen->working_directory, argv2, env, spawn_flags, NULL, NULL, &screen->pid, &error)) ++++++ Terminal-0.4.5.tar.bz2 -> Terminal-0.4.6.tar.bz2 ++++++ ++++ 60815 lines of diff (skipped) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org