From 6be2c5a6ab0b465e2591435715bae6db830e2356 Mon Sep 17 00:00:00 2001 From: Lars Wendler Date: Mon, 14 May 2018 11:51:21 +0200 Subject: [PATCH] app-shells/dash: Revbump to fix dash parser. Removed old. Package-Manager: Portage-2.3.36, Repoman-2.3.9 --- ...10.1-r1.ebuild => dash-0.5.10.1-r2.ebuild} | 1 + .../dash/files/dash-0.5.10.1-parser.patch | 43 +++++++++++++++++++ 2 files changed, 44 insertions(+) rename app-shells/dash/{dash-0.5.10.1-r1.ebuild => dash-0.5.10.1-r2.ebuild} (98%) create mode 100644 app-shells/dash/files/dash-0.5.10.1-parser.patch diff --git a/app-shells/dash/dash-0.5.10.1-r1.ebuild b/app-shells/dash/dash-0.5.10.1-r2.ebuild similarity index 98% rename from app-shells/dash/dash-0.5.10.1-r1.ebuild rename to app-shells/dash/dash-0.5.10.1-r2.ebuild index d51383e2eb19..09d6f32c73f1 100644 --- a/app-shells/dash/dash-0.5.10.1-r1.ebuild +++ b/app-shells/dash/dash-0.5.10.1-r2.ebuild @@ -29,6 +29,7 @@ DEPEND="${RDEPEND} PATCHES=( "${FILESDIR}"/${PN}-0.5.9.1-format-security.patch + "${FILESDIR}"/${P}-parser.patch ) src_prepare() { diff --git a/app-shells/dash/files/dash-0.5.10.1-parser.patch b/app-shells/dash/files/dash-0.5.10.1-parser.patch new file mode 100644 index 000000000000..485fc7e6772a --- /dev/null +++ b/app-shells/dash/files/dash-0.5.10.1-parser.patch @@ -0,0 +1,43 @@ +https://www.mail-archive.com/dash@vger.kernel.org/msg01620.html + +--- dash-0.5.10.1/src/parser.c ++++ dash-0.5.10.1/src/parser.c +@@ -853,6 +853,11 @@ + return c; + } + ++static int pgetc_top(struct synstack *stack) ++{ ++ return stack->syntax == SQSYNTAX ? pgetc() : pgetc_eatbnl(); ++} ++ + static void synstack_push(struct synstack **stack, struct synstack *next, + const char *syntax) + { +@@ -915,7 +920,7 @@ + attyline(); + if (synstack->syntax == BASESYNTAX) + return readtoken(); +- c = syntax == SQSYNTAX ? pgetc() : pgetc_eatbnl(); ++ c = pgetc_top(synstack); + goto loop; + } + #endif +@@ -929,7 +934,7 @@ + goto endword; /* exit outer loop */ + USTPUTC(c, out); + nlprompt(); +- c = syntax == SQSYNTAX ? pgetc() : pgetc_eatbnl(); ++ c = pgetc_top(synstack); + goto loop; /* continue outer loop */ + case CWORD: + USTPUTC(c, out); +@@ -1056,7 +1061,7 @@ + USTPUTC(c, out); + } + } +- c = syntax == SQSYNTAX ? pgetc() : pgetc_eatbnl(); ++ c = pgetc_top(synstack); + } + } + endword: -- 2.26.2