summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--vte3/.footprint6
-rw-r--r--vte3/.md5sum6
-rw-r--r--vte3/.signature12
-rw-r--r--vte3/Pkgfile41
-rw-r--r--vte3/vte-metamask.patch20
-rw-r--r--vte3/vte3-790536.patch27
-rw-r--r--vte3/vte3-790539.patch91
-rw-r--r--vte3/vte3-pty_memory_leak.patch25
8 files changed, 184 insertions, 44 deletions
diff --git a/vte3/.footprint b/vte3/.footprint
index 604fc841c..346ce0ee0 100644
--- a/vte3/.footprint
+++ b/vte3/.footprint
@@ -19,9 +19,9 @@ drwxr-xr-x root/root usr/lib/
drwxr-xr-x root/root usr/lib/girepository-1.0/
-rw-r--r-- root/root usr/lib/girepository-1.0/Vte-2.91.typelib
-rwxr-xr-x root/root usr/lib/libvte-2.91.la
-lrwxrwxrwx root/root usr/lib/libvte-2.91.so -> libvte-2.91.so.0.4800.2
-lrwxrwxrwx root/root usr/lib/libvte-2.91.so.0 -> libvte-2.91.so.0.4800.2
--rwxr-xr-x root/root usr/lib/libvte-2.91.so.0.4800.2
+lrwxrwxrwx root/root usr/lib/libvte-2.91.so -> libvte-2.91.so.0.5000.2
+lrwxrwxrwx root/root usr/lib/libvte-2.91.so.0 -> libvte-2.91.so.0.5000.2
+-rwxr-xr-x root/root usr/lib/libvte-2.91.so.0.5000.2
drwxr-xr-x root/root usr/lib/pkgconfig/
-rw-r--r-- root/root usr/lib/pkgconfig/vte-2.91.pc
drwxr-xr-x root/root usr/share/
diff --git a/vte3/.md5sum b/vte3/.md5sum
index 44ff4e5c5..7a32079f3 100644
--- a/vte3/.md5sum
+++ b/vte3/.md5sum
@@ -1,2 +1,4 @@
-bc0601624af5668df5cd37e3fe1237b2 vte-0.48.2.tar.xz
-90efc55c080484424464ad928929f642 vte-metamask.patch
+1912cfd1d9cdd30cebeb908507acadc5 vte-0.50.2.tar.xz
+8ff05b81c3990226dcae181061ecc0f1 vte3-790536.patch
+163e1c353661948ab0084ff98c7f42a8 vte3-790539.patch
+c37be9686f948b553947a57abf2435de vte3-pty_memory_leak.patch
diff --git a/vte3/.signature b/vte3/.signature
index 18fccdb73..8a916e877 100644
--- a/vte3/.signature
+++ b/vte3/.signature
@@ -1,6 +1,8 @@
untrusted comment: verify with /etc/ports/opt.pub
-RWSE3ohX2g5d/YulPh555LNty+FIPcmsM0fU5lyjNLnTRIfT9u5jYkZUEYO5c+44YsCsidPUr82+W/E+C8uaErXpj0mGyuGSuww=
-SHA256 (Pkgfile) = 46ffeabdb5adde3258572353154e222d88e3a9ca12f0afa920826589e5c2252d
-SHA256 (.footprint) = d56c6b068bb60fbf729019017be83d03081c373702583313e32e12c95c6faf3d
-SHA256 (vte-0.48.2.tar.xz) = c278b301edfe38b43baec1bccc86e225dacea5b670a96ca7ea55ca9a4b030690
-SHA256 (vte-metamask.patch) = 0432074528c49f5399e45c774274332d06e28f5668e116093c3aaebddf31c381
+RWSE3ohX2g5d/V5YEX87WUO0Xm5C7QyMihZttUb9YYAZn/5pk1MipBaK3YkoxBCzjQnJFO907tJcBP6NsSIv1COm5bHLKeuB2QA=
+SHA256 (Pkgfile) = cd2e804445aba24a0dd8d4e17dfd385648832565cb03349ba89e1d325c3526ff
+SHA256 (.footprint) = b2debc514eaa50397750caa45b88dfad49a31daa00cd7d999fd41aafde53ce08
+SHA256 (vte-0.50.2.tar.xz) = 79dd316bfaff48f2fb74d066baae0d830e1f44436796fe410a57297e5c5f09cf
+SHA256 (vte3-790539.patch) = bd3aaec0ceaa47948160a016f1eaaabf783df7771932a335448a060882ec97e4
+SHA256 (vte3-pty_memory_leak.patch) = b7e57d7e5e40a75eb5f409f163adc649f1c040d4f9c0594ddc1369aea45df291
+SHA256 (vte3-790536.patch) = 9d0561dc8e8bb46b936d31b8265a42bed0d112d36a734ebe11fcff7aa9be1be4
diff --git a/vte3/Pkgfile b/vte3/Pkgfile
index 7ac596c99..52e5c4bc6 100644
--- a/vte3/Pkgfile
+++ b/vte3/Pkgfile
@@ -1,27 +1,40 @@
# Description: Virtual Terminal Emulator widget for use with GTK3
# URL: https://wiki.gnome.org/action/show/Apps/Terminal/VTE
# Maintainer: Danny Rawlins, crux at romster dot me
-# Depends on: gtk3 gnutls libpcre2
+# Depends on: gnutls gtk3 libgmp libpcre2 util-linux
name=vte3
-version=0.48.2
+version=0.50.2
release=1
-source=(ftp://ftp.gnome.org/pub/gnome/sources/vte/${version%.*}/vte-$version.tar.xz \
- vte-metamask.patch)
+source=(https://download.gnome.org/sources/vte/${version%.*}/vte-$version.tar.xz
+ $name-790539.patch
+ $name-pty_memory_leak.patch
+ $name-790536.patch)
build() {
- cd vte-$version
+ cd vte-$version
- patch -R -p1 -i $SRC/vte-metamask.patch
+ # https://bugzilla.gnome.org/show_bug.cgi?id=790539
+ # https://git.gnome.org/browse/vte/commit/?h=vte-0-50&id=1d200a63ac4e39035af35e80881aa4fdae5556c6
+ patch -p1 -i $SRC/$name-790539.patch
- ./configure --prefix=/usr \
- --libexecdir=/usr/lib/vte \
- --disable-static \
- --disable-gtk-doc \
- --enable-vala=no
+ # pty: Fix memory leak
+ # https://git.gnome.org/browse/vte/commit/?h=vte-0-50&id=ddd6dc998d9842369ec20f8e83c380401a8aed02
+ patch -p1 -i $SRC/$name-pty_memory_leak.patch
- make
- make DESTDIR=$PKG install
+ # https://bugzilla.gnome.org/show_bug.cgi?id=790536
+ # https://git.gnome.org/browse/vte/commit/?h=vte-0-50&id=504db1b97f684778ee52f6e280a9e734936be20f
+ patch -p1 -i $SRC/$name-790536.patch
- rm -rf $PKG/usr/share/{gtk-doc,locale}
+ ./configure \
+ --prefix=/usr \
+ --libexecdir=/usr/lib/vte \
+ --disable-static \
+ --disable-gtk-doc \
+ --enable-vala=no
+
+ make
+ make DESTDIR=$PKG install
+
+ rm -r $PKG/usr/share/{gtk-doc,locale}
}
diff --git a/vte3/vte-metamask.patch b/vte3/vte-metamask.patch
deleted file mode 100644
index 9423d94f8..000000000
--- a/vte3/vte-metamask.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-From b73782a28894e25ed146271f9d6c6775a6836199 Mon Sep 17 00:00:00 2001
-From: Behdad Esfahbod <behdad@behdad.org>
-Date: Fri, 04 Jun 2010 18:36:45 +0000
-Subject: Bug 601926 - Don't hardcode meta to alt
-
----
-diff --git a/src/keymap.h b/src/keymap.h
-index 3a4cefe..243e22e 100644
---- a/src/keymap.h
-+++ b/src/keymap.h
-@@ -27,7 +27,7 @@
-
- G_BEGIN_DECLS
-
--#define VTE_META_MASK GDK_MOD1_MASK
-+#define VTE_META_MASK GDK_META_MASK
- #define VTE_NUMLOCK_MASK GDK_MOD2_MASK
-
- /* Map the specified keyval/modifier setup, dependent on the mode, to either
---
diff --git a/vte3/vte3-790536.patch b/vte3/vte3-790536.patch
new file mode 100644
index 000000000..097ee775f
--- /dev/null
+++ b/vte3/vte3-790536.patch
@@ -0,0 +1,27 @@
+From 504db1b97f684778ee52f6e280a9e734936be20f Mon Sep 17 00:00:00 2001
+From: Egmont Koblinger <egmont@gmail.com>
+Date: Sat, 18 Nov 2017 20:50:06 +0100
+Subject: widget: Reset might need to start blinking the cursor
+
+https://bugzilla.gnome.org/show_bug.cgi?id=790536
+(cherry picked from commit f6678e7e938aaf6f4fd72ceb8f1bb71b2bf3e69e)
+---
+ src/vte.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/vte.cc b/src/vte.cc
+index 6f28670..a9f73e2 100644
+--- a/src/vte.cc
++++ b/src/vte.cc
+@@ -10349,7 +10349,7 @@ VteTerminalPrivate::reset(bool clear_tabstops,
+ adjust_adjustments_full();
+ }
+ /* DECSCUSR cursor style */
+- m_cursor_style = VTE_CURSOR_STYLE_TERMINAL_DEFAULT;
++ set_cursor_style(VTE_CURSOR_STYLE_TERMINAL_DEFAULT);
+ /* Do more stuff we refer to as a "full" reset. */
+ if (clear_tabstops) {
+ set_default_tabstops();
+--
+cgit v0.12
+
diff --git a/vte3/vte3-790539.patch b/vte3/vte3-790539.patch
new file mode 100644
index 000000000..ebcfa0f8a
--- /dev/null
+++ b/vte3/vte3-790539.patch
@@ -0,0 +1,91 @@
+From 1d200a63ac4e39035af35e80881aa4fdae5556c6 Mon Sep 17 00:00:00 2001
+From: Christian Persch <chpe@src.gnome.org>
+Date: Sat, 18 Nov 2017 18:40:03 +0100
+Subject: matcher: Fix memory leak
+
+Don't leak the GValueArray.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=790539
+(cherry picked from commit dda73cc07250ea324b4227907197c39b93fcd365)
+---
+ src/matcher.cc | 12 +++++++-----
+ src/table.cc | 19 +++++++++++--------
+ 2 files changed, 18 insertions(+), 13 deletions(-)
+
+diff --git a/src/matcher.cc b/src/matcher.cc
+index 10f3bc7..a4f7584 100644
+--- a/src/matcher.cc
++++ b/src/matcher.cc
+@@ -202,14 +202,16 @@ _vte_matcher_print(struct _vte_matcher *matcher)
+ * we need to free those ourselves. */
+ void
+ _vte_matcher_free_params_array(struct _vte_matcher *matcher,
+- GValueArray *params)
++ GValueArray *params)
+ {
+ guint i;
+ for (i = 0; i < params->n_values; i++) {
+- GValue *value = &params->values[i];
+- if (G_UNLIKELY (g_type_is_a (value->g_type, G_TYPE_POINTER))) {
+- g_free (g_value_get_pointer (value));
+- }
++ auto value = g_value_array_get_nth(params, i);
++ if (G_UNLIKELY (G_VALUE_HOLDS_POINTER(value))) {
++ g_free(g_value_get_pointer(value));
++ } else if (G_UNLIKELY (G_VALUE_HOLDS_BOXED(value))) {
++ g_value_array_free((GValueArray*)g_value_get_boxed(value));
++ }
+ }
+ if (G_UNLIKELY (matcher == NULL || matcher->free_params != NULL)) {
+ g_value_array_free (params);
+diff --git a/src/table.cc b/src/table.cc
+index 3c78f3a..09a6172 100644
+--- a/src/table.cc
++++ b/src/table.cc
+@@ -516,18 +516,14 @@ static void
+ _vte_table_extract_numbers(GValueArray **array,
+ struct _vte_table_arginfo *arginfo)
+ {
+- GValue value = {0,};
+- GValue subvalue = {0,};
+- GValueArray *subarray = NULL;
+- gssize i;
+-
+ if (G_UNLIKELY (*array == NULL)) {
+ *array = g_value_array_new(1);
+ }
+
++ GValue value = {0,};
+ g_value_init(&value, G_TYPE_LONG);
+- g_value_init(&subvalue, G_TYPE_VALUE_ARRAY);
+- i = 0;
++ gssize i = 0;
++ GValueArray *subarray = nullptr;
+ do {
+ long total = 0;
+ for (; i < arginfo->length && arginfo->start[i] != ';' && arginfo->start[i] != ':'; i++) {
+@@ -546,13 +542,20 @@ _vte_table_extract_numbers(GValueArray **array,
+ g_value_array_append(*array, &value);
+ } else {
+ g_value_array_append(subarray, &value);
+- g_value_set_boxed(&subvalue, subarray);
++
++ GValue subvalue = {0,};
++ g_value_init(&subvalue, G_TYPE_VALUE_ARRAY);
++ g_value_take_boxed(&subvalue, subarray);
+ g_value_array_append(*array, &subvalue);
++ g_value_unset(&subvalue);
++
+ subarray = NULL;
+ }
+ }
+ } while (i++ < arginfo->length);
+ g_value_unset(&value);
++ if (subarray != nullptr)
++ g_value_array_free(subarray);
+ }
+
+ static void
+--
+cgit v0.12
+
diff --git a/vte3/vte3-pty_memory_leak.patch b/vte3/vte3-pty_memory_leak.patch
new file mode 100644
index 000000000..e82ec89ee
--- /dev/null
+++ b/vte3/vte3-pty_memory_leak.patch
@@ -0,0 +1,25 @@
+From ddd6dc998d9842369ec20f8e83c380401a8aed02 Mon Sep 17 00:00:00 2001
+From: Christian Persch <chpe@src.gnome.org>
+Date: Sat, 18 Nov 2017 19:10:10 +0100
+Subject: pty: Fix mem leak
+
+(cherry picked from commit 304e29d8a603828f42410ceac39ad803fcac475b)
+---
+ src/pty.cc | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/pty.cc b/src/pty.cc
+index c1741d2..0c0b001 100644
+--- a/src/pty.cc
++++ b/src/pty.cc
+@@ -1200,5 +1200,7 @@ vte_pty_spawn_finish(VtePty *pty,
+ *child_pid = *(GPid*)pidptr;
+ if (error)
+ *error = nullptr;
++
++ g_free(pidptr);
+ return TRUE;
+ }
+--
+cgit v0.12
+

Generated by cgit