From 470e69d1684f36b57778a093218adf5eb058b8bf Mon Sep 17 00:00:00 2001 From: Juan RP Date: Mon, 12 Dec 2016 07:13:10 +0100 Subject: [PATCH] zsh: update to 5.3. --- srcpkgs/zsh/patches/37337.patch | 94 --------------------------------- srcpkgs/zsh/patches/37643.patch | 29 ---------- srcpkgs/zsh/template | 6 +-- 3 files changed, 3 insertions(+), 126 deletions(-) delete mode 100644 srcpkgs/zsh/patches/37337.patch delete mode 100644 srcpkgs/zsh/patches/37643.patch diff --git a/srcpkgs/zsh/patches/37337.patch b/srcpkgs/zsh/patches/37337.patch deleted file mode 100644 index a47c30cdf45..00000000000 --- a/srcpkgs/zsh/patches/37337.patch +++ /dev/null @@ -1,94 +0,0 @@ -From 0c2d823a7955981e88f7cb5b718a7081d97104f0 Mon Sep 17 00:00:00 2001 -From: Peter Stephenson -Date: Mon, 7 Dec 2015 14:32:52 +0000 -Subject: [PATCH] 37337: Delay freeing widget until not in use. - -diff --git Src/Zle/zle.h Src/Zle/zle.h -index 2d672de..e9b1428 100644 ---- Src/Zle/zle.h -+++ Src/Zle/zle.h -@@ -213,6 +213,8 @@ struct widget { - #define ZLE_KEEPSUFFIX (1<<9) /* DON'T remove added suffix */ - #define ZLE_NOTCOMMAND (1<<10) /* widget should not alter lastcmd */ - #define ZLE_ISCOMP (1<<11) /* usable for new style completion */ -+#define WIDGET_INUSE (1<<12) /* widget is in use */ -+#define WIDGET_FREE (1<<13) /* request to free when no longer in use */ - - /* thingies */ - -diff --git Src/Zle/zle_main.c Src/Zle/zle_main.c -index 38427e8..1f0c07d 100644 ---- Src/Zle/zle_main.c -+++ Src/Zle/zle_main.c -@@ -1344,6 +1344,8 @@ execzlefunc(Thingy func, char **args, int set_bindk) - eofsent = 1; - ret = 1; - } else { -+ int inuse = wflags & WIDGET_INUSE; -+ w->flags |= WIDGET_INUSE; - if(!(wflags & ZLE_KEEPSUFFIX)) - removesuffix(); - if(!(wflags & ZLE_MENUCMP)) { -@@ -1367,6 +1369,12 @@ execzlefunc(Thingy func, char **args, int set_bindk) - ret = w->u.fn(args); - unqueue_signals(); - } -+ if (!inuse) { -+ if (w->flags & WIDGET_FREE) -+ freewidget(w); -+ else -+ w->flags &= ~WIDGET_INUSE; -+ } - if (!(wflags & ZLE_NOTCOMMAND)) - lastcmd = wflags; - } -@@ -1387,6 +1395,8 @@ execzlefunc(Thingy func, char **args, int set_bindk) - int osc = sfcontext, osi = movefd(0); - int oxt = isset(XTRACE); - LinkList largs = NULL; -+ int inuse = w->flags & WIDGET_INUSE; -+ w->flags |= WIDGET_INUSE; - - if (*args) { - largs = newlinklist(); -@@ -1402,8 +1412,15 @@ execzlefunc(Thingy func, char **args, int set_bindk) - opts[XTRACE] = oxt; - sfcontext = osc; - endparamscope(); -- lastcmd = w->flags; -- w->flags = 0; -+ lastcmd = w->flags & ~(WIDGET_INUSE|WIDGET_FREE); -+ if (inuse) { -+ w->flags &= WIDGET_INUSE|WIDGET_FREE; -+ } else { -+ if (w->flags & WIDGET_FREE) -+ freewidget(w); -+ else -+ w->flags = 0; -+ } - r = 1; - redup(osi, 0); - } -diff --git Src/Zle/zle_thingy.c Src/Zle/zle_thingy.c -index 271fd8e..21495b6 100644 ---- Src/Zle/zle_thingy.c -+++ Src/Zle/zle_thingy.c -@@ -253,9 +253,14 @@ unbindwidget(Thingy t, int override) - /* Free a widget. */ - - /**/ --static void -+void - freewidget(Widget w) - { -+ if (w->flags & WIDGET_INUSE) { -+ w->flags |= WIDGET_FREE; -+ return; -+ } -+ - if (w->flags & WIDGET_NCOMP) { - zsfree(w->u.comp.wid); - zsfree(w->u.comp.func); --- -2.6.3 - diff --git a/srcpkgs/zsh/patches/37643.patch b/srcpkgs/zsh/patches/37643.patch deleted file mode 100644 index a6f1d555e1c..00000000000 --- a/srcpkgs/zsh/patches/37643.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit 1d8b5285226afba4f1ef9030cf862c14b975c284 -Author: Peter Stephenson -Date: Fri Jan 15 12:49:42 2016 +0000 - - 37643: Reset interrupt on key input in menu selection. - - We don't need to propagate the interrupt further as the interrupt - causes the key to be empty, which will exit the widget. We - need to reset the condition as zrefresh() is now more sensitive - to errors since 36416 / 32f5d3d8. - -diff --git a/Src/Zle/complist.c b/Src/Zle/complist.c -index 29aaee8..0ccb885 100644 ---- Src/Zle/complist.c -+++ Src/Zle/complist.c -@@ -2584,6 +2584,12 @@ domenuselect(Hookdef dummy, Chdata dat) - if (!do_last_key) { - zmult = 1; - cmd = getkeycmd(); -+ /* -+ * On interrupt, we'll exit due to cmd being empty. -+ * Don't propagate the interrupt any further, which -+ * can screw up redrawing. -+ */ -+ errflag &= ~ERRFLAG_INT; - if (mtab_been_reallocated) { - do_last_key = 1; - continue; - diff --git a/srcpkgs/zsh/template b/srcpkgs/zsh/template index 40fc4d365c4..6f51f7cb4f7 100644 --- a/srcpkgs/zsh/template +++ b/srcpkgs/zsh/template @@ -1,7 +1,7 @@ # Template file for 'zsh' pkgname=zsh -version=5.2 -revision=3 +version=5.3 +revision=1 lib32disabled=yes build_style=gnu-configure make_build_target="all info" @@ -23,7 +23,7 @@ maintainer="Juan RP " homepage="http://www.zsh.org" license="zsh" distfiles="http://www.zsh.org/pub/zsh-$version.tar.xz" -checksum=f17916320ffaa844bbd7ce48ceeb5945fc5f3eff64b149b4229bbfbdf3795a9d +checksum=76f82cfd5ce373cf799a03b6f395283f128430db49202e3e3f512fb5a19d6f8a pre_configure() { # Set correct keymap path