summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Gryniewicz <dang@gentoo.org>2007-03-27 03:02:52 +0000
committerDaniel Gryniewicz <dang@gentoo.org>2007-03-27 03:02:52 +0000
commitcfb408f0a879b248825c9e297ebf5d541c24b1a7 (patch)
tree931bdcb5b018bcb7f0862cd08edab44ea35396b5 /x11-libs/vte
parentgnome 2.18.0 (diff)
downloadgentoo-2-cfb408f0a879b248825c9e297ebf5d541c24b1a7.tar.gz
gentoo-2-cfb408f0a879b248825c9e297ebf5d541c24b1a7.tar.bz2
gentoo-2-cfb408f0a879b248825c9e297ebf5d541c24b1a7.zip
gnome 2.18.0
(Portage version: 2.1.2.2)
Diffstat (limited to 'x11-libs/vte')
-rw-r--r--x11-libs/vte/ChangeLog8
-rw-r--r--x11-libs/vte/files/digest-vte-0.16.0-r13
-rw-r--r--x11-libs/vte/files/vte-0.16.0-expose-race.patch67
-rw-r--r--x11-libs/vte/vte-0.16.0-r1.ebuild55
4 files changed, 132 insertions, 1 deletions
diff --git a/x11-libs/vte/ChangeLog b/x11-libs/vte/ChangeLog
index 60464cd8b082..17c363160548 100644
--- a/x11-libs/vte/ChangeLog
+++ b/x11-libs/vte/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for x11-libs/vte
# Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/vte/ChangeLog,v 1.143 2007/02/07 12:32:42 leio Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/vte/ChangeLog,v 1.144 2007/03/27 03:02:52 dang Exp $
+
+*vte-0.16.0-r1 (27 Mar 2007)
+
+ 27 Mar 2007; Daniel Gryniewicz <dang@gentoo.org>
+ +files/vte-0.16.0-expose-race.patch, +vte-0.16.0-r1.ebuild:
+ gnome 2.18.0
*vte-0.14.2 (07 Feb 2007)
diff --git a/x11-libs/vte/files/digest-vte-0.16.0-r1 b/x11-libs/vte/files/digest-vte-0.16.0-r1
new file mode 100644
index 000000000000..049c2d0e0d20
--- /dev/null
+++ b/x11-libs/vte/files/digest-vte-0.16.0-r1
@@ -0,0 +1,3 @@
+MD5 6b85967ba75ed574d0e5782697fbc79f vte-0.16.0.tar.bz2 1095254
+RMD160 81b373d14ddfca0b489f5093533fd375c84f5b81 vte-0.16.0.tar.bz2 1095254
+SHA256 7f71faf8beb686f940f13125ff5fcc142c7b8ccde81cf80c8f278fdf4a0cacec vte-0.16.0.tar.bz2 1095254
diff --git a/x11-libs/vte/files/vte-0.16.0-expose-race.patch b/x11-libs/vte/files/vte-0.16.0-expose-race.patch
new file mode 100644
index 000000000000..3f12e483c93c
--- /dev/null
+++ b/x11-libs/vte/files/vte-0.16.0-expose-race.patch
@@ -0,0 +1,67 @@
+diff --exclude-from=/home/dang/bin/scripts/diffrc -up -ruN vte-0.16.0.orig/src/vte.c vte-0.16.0/src/vte.c
+--- vte-0.16.0.orig/src/vte.c 2007-03-08 11:47:15.000000000 -0500
++++ vte-0.16.0/src/vte.c 2007-03-23 15:17:51.000000000 -0400
+@@ -1613,19 +1613,19 @@ vte_terminal_emit_adjustment_changed(Vte
+ }
+
+ /* Queue an adjustment-changed signal to be delivered when convenient. */
+-static void
++static inline void
+ vte_terminal_queue_adjustment_changed(VteTerminal *terminal)
+ {
+ terminal->pvt->adjustment_changed_pending = TRUE;
+- vte_terminal_start_processing (terminal);
++ add_update_timeout (terminal);
+ }
+-static void
++static inline void
+ vte_terminal_queue_adjustment_value_changed(VteTerminal *terminal, glong v)
+ {
+ if (v != terminal->pvt->screen->scroll_delta) {
+ terminal->pvt->screen->scroll_delta = v;
+ terminal->pvt->adjustment_value_changed_pending = TRUE;
+- vte_terminal_start_processing (terminal);
++ add_update_timeout (terminal);
+ }
+ }
+
+@@ -3643,7 +3643,7 @@ out:
+ }
+
+ return !eof &&
+- (active_terminals ? g_list_length (active_terminals) : 1) *
++ g_list_length (active_terminals) *
+ terminal->pvt->input_bytes < terminal->pvt->max_input_bytes;
+ }
+
+@@ -3712,7 +3712,6 @@ vte_terminal_io_write(GIOChannel *channe
+ }
+
+ if (_vte_buffer_length(terminal->pvt->outgoing) == 0) {
+- _vte_terminal_disconnect_pty_write(terminal);
+ leave_open = FALSE;
+ } else {
+ leave_open = TRUE;
+@@ -10130,14 +10129,19 @@ static gint
+ vte_terminal_expose(GtkWidget *widget, GdkEventExpose *event)
+ {
+ VteTerminal *terminal = VTE_TERMINAL (widget);
++ /* Beware the out of order events -
++ * do not even think about skipping exposes! */
+ _vte_debug_print (VTE_DEBUG_WORK, "+");
+- if (terminal->pvt->visibility_state == GDK_VISIBILITY_FULLY_OBSCURED) {
+- return FALSE;
+- }
+ _vte_debug_print (VTE_DEBUG_EVENTS, "Expose (%d,%d)x(%d,%d)\n",
+ event->area.x, event->area.y,
+ event->area.width, event->area.height);
+ if (terminal->pvt->active != NULL && !in_update_timeout) {
++ /* fix up a race condition where we schedule a delayed update
++ * after an 'immediate' invalidate all */
++ if (terminal->pvt->invalidated_all &&
++ terminal->pvt->update_regions == NULL) {
++ terminal->pvt->invalidated_all = FALSE;
++ }
+ /* if we expect to redraw the widget soon,
+ * just add this event to the list */
+ if (!terminal->pvt->invalidated_all) {
diff --git a/x11-libs/vte/vte-0.16.0-r1.ebuild b/x11-libs/vte/vte-0.16.0-r1.ebuild
new file mode 100644
index 000000000000..a51836429512
--- /dev/null
+++ b/x11-libs/vte/vte-0.16.0-r1.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/vte/vte-0.16.0-r1.ebuild,v 1.1 2007/03/27 03:02:52 dang Exp $
+
+inherit eutils gnome2 autotools
+
+DESCRIPTION="Xft powered terminal widget"
+HOMEPAGE="http://www.gnome.org/"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="debug doc pcre python opengl"
+
+RDEPEND=">=dev-libs/glib-2.9
+ >=x11-libs/gtk+-2.6
+ >=x11-libs/pango-1.1
+ >=media-libs/freetype-2.0.2
+ media-libs/fontconfig
+ sys-libs/ncurses
+ opengl? (
+ virtual/opengl
+ virtual/glu
+ )
+ pcre? ( dev-libs/libpcre )
+ python? (
+ >=dev-python/pygtk-2.4
+ >=dev-lang/python-2.2
+ )
+ || ( x11-libs/libX11 virtual/x11 )
+ virtual/xft"
+
+DEPEND="${RDEPEND}
+ doc? ( >=dev-util/gtk-doc-1.0 )
+ >=dev-util/intltool-0.35
+ >=dev-util/pkgconfig-0.9
+ sys-devel/gettext"
+
+DOCS="AUTHORS ChangeLog HACKING NEWS README"
+
+pkg_setup() {
+ G2CONF="$(use_enable debug debugging) $(use_enable python) \
+ $(use_with opengl glX) $(use_with pcre) --with-xft2 --with-pangox"
+}
+
+src_unpack() {
+ gnome2_src_unpack
+
+ epatch ${FILESDIR}/${PN}-0.13.2-no-lazy-bindings.patch
+
+ epatch "${FILESDIR}"/${P}-expose-race.patch
+
+ cd ${S}/gnome-pty-helper
+ eautomake
+}