diff options
Diffstat (limited to 'app-shells/bash')
4 files changed, 46 insertions, 41 deletions
diff --git a/app-shells/bash/Manifest b/app-shells/bash/Manifest index 3b78da93648a..bf9da49afc7b 100644 --- a/app-shells/bash/Manifest +++ b/app-shells/bash/Manifest @@ -1,5 +1,6 @@ AUX bash-5.0-syslog-history-extern.patch 376 BLAKE2B d883d3c3adbf8f4d19ecc3c2790754a7f6972682d1679b07d5bc599bdbfc019ba8ad4d1271ec550b59447db0a02f1219c9e6057a0b1c1c6c52f7750a746a07bf SHA512 c8dd17bdd8ccbd73061a7cbcb7351195e703a2c5fc6faf288ec3721fc6e526d88dd4b2201f87078a92ca134b98214ccfa935f82f585322f72e9a41fd51842b6a -AUX bash-5.2_p2-fixes-for-extglob-in-compat-mode.patch 9443 BLAKE2B a001c90dc2f9376e4c828d4ebbb7bad1752b22f49a4b6050a54859734d9b444616480e29bcb7b140cd3e72b56e71e911d7a48e879a8eda71b7e750401bcbf885 SHA512 ef6863afa206edbc0711a3867902a50907285ce85534a96f87ff44cba9267067bfe25870c132a801f19a12e8cf0454e6c54f0d14d3bea1090415c8c0e97bd1a6 +AUX bash-5.2_p2-fix-for-brackets-in-nested-parameter-expansions.patch 1565 BLAKE2B 2bf54251c7aba1d717faf805dd1495533e28af764b648117a9069984d40988313bb5a64060c6922a66e946895d33f21bcac2805d5692ac4b751fb56b648a7d17 SHA512 951f48a3a2737b1ea061e4c3379f121fe555a403071ea3f9dfe961f8fd2df69626c98bfc66dc460609793b33db04979cfc98acf4c1532b17d91e273548263abd +AUX bash-5.2_p2-fixes-for-extglob-in-compat-mode.patch 7983 BLAKE2B 9fbc3cd196716dbd8e51619cd69a530edff2137276b3a7b41995d25d307d99fc4759d5c1ef4206e1bb049c28fb34bc3b6ca6920c4d16a18c687ccebddff16988 SHA512 2dcd0ee171b757e49da5873bd7d7db4f428eb40e22a6da5eb03b7e9fa2983c1d63ca4589eb86ca45bbb5d899d8a35993d0ba9ae7808a49ccd22634d618fa621d AUX bash_logout 205 BLAKE2B b8c0266c3d1e31a714304a2b3b33389f042ae5bd497379f9b15ce31d47d1e3da73ba6536023953b00efe27b687e2ff45d94e3f01a13acc824dc12e31552c5b94 SHA512 7234250c03fc920996a381f9daef9e2d8ab1e1a29acdebed6669d8e0fe1c872a7fa343adf7d9ddc81225b0cd9eb223ba7ad1ff42448aff057fc6d6baa8f04a7d AUX bashrc 3496 BLAKE2B eced5328d6ff2545c4e088ec5050ccd72fb5344bb83bd7d70b95840e68e642bd2a302c393b2ad12bd1ee9f42d51334043f8c1a0d36274bfd365339cec33cdec0 SHA512 39472c63db1f69cca8a92c5d330695f29e8f0b0524a6319482bbec394d91503d7c3a69dcd961927c7c404490efc8cf41b381e7bf4134098b750f47e5a47ff393 AUX dot-bash_logout 127 BLAKE2B 8290778aea3426f4c56e5a9e7328faa76f99001fc7ce3eeb3ec26624edcd918d7e946da9a63ffcd0cf0f739b528ccb9e764d448276fe4344b69ef2036fdd9921 SHA512 e0248b5087656a4dd3a4790ed8e6101866b922ccab36b510b3bf408dc0c583e70f323fbad0392e4ea6ca5dcbe73568733e0c0aa9c8ce6b00ff5f72bf3e9fd8fd @@ -396,7 +397,7 @@ EBUILD bash-4.4_p23-r2.ebuild 6090 BLAKE2B d09c2e76a0766ec38ace27c76b5219a52a6fa EBUILD bash-5.0_p18.ebuild 7423 BLAKE2B ca28a57b4407a5971bdf25f477e4c6b40b6c2b1f79aaffaf778838f41490dcf7da7eb7dbe4652b47164210c25e764751f8ec60d4dc1c30751373bc0636d9d3ea SHA512 bddcc1a7813ed881f8ba6bf440a890f5ac633335e743ea1393082a6a55d99a3604b36271c6f15c9e2a7b06eefac1820f8f6ee4f92f582afc9ea86181c43ace6b EBUILD bash-5.1_p16-r1.ebuild 8047 BLAKE2B 920477ad40a57b693a034c2a526b9769e90d6a8c71a7e956551f198e4cb84605abe32e580df99f78340c183e85590640f213b76a437b825d7710b5c5d755a493 SHA512 d3dba26ef514f9dd93c9743d73dd5ea6041e006bc3f4e5d330898f4579267d08d87cdd0634de57e7f740d065e6f4e518119c141447f691679a0b4a3df7a0a147 EBUILD bash-5.1_p16-r2.ebuild 8234 BLAKE2B f5b26b6ad263cd92f91f8c6fe0896b90cb43bb5faa4b92c80e123ec3fa74316f43e441fd50a54d47257fc3e4baec625a4274e5ec58b125a9e899d21c1be6263a SHA512 c848cfea6401643d2517cc18a6018f206e384264728dcc040aa8d5d22ec901c37f0e8a49758933b794d6381770f4549ad4d6fd3521f6db14f91c1798895b03d0 -EBUILD bash-5.2_p2-r2.ebuild 9411 BLAKE2B 4021d36bb01703db4f7f5982d8856bf4da42bdeb2a79ba3a992f904a3becad82e1499cc3c3d19a5e8ffa5ad5052d78960bcff7c14db4ddd522553559909bb818 SHA512 58b49fcf1029e701475700b65061d4531a4ee9d5647ea90085f4cf29efb768061e2e7bb40dcc511a3e48aa02f3676e8f52b665bb76e6d6cb3daec4b00a177eb5 +EBUILD bash-5.2_p2-r2.ebuild 9477 BLAKE2B c16b5f06f20e14a0401f3acde5bab9e5e260117f75b12a8db2d2557f9d98d60231931f141a93a340895896bfade9a8e3de41928e5a26ddcad6ef7068c1562afa SHA512 4377489d3ad2f3d2e50715e10c364fa5e73e0aff7d36399e0176add2f573db9a0b9816c62055d4bf34818fd11e80e7323a9cb8e6bd02d4daaf47e45c10742dbb EBUILD bash-5.2_p2.ebuild 9350 BLAKE2B e1e028bcef06fbbadaa200376a7d33bd2fa2b1c4ce5a5711805ea9b7bf3426a4785b147cc9cb1a8f2314b004ecef0d95c0b212a935946225b11e9334031e55eb SHA512 deced834f4d2cf6ed25405b45018fbd20e9da7cf2e64bba75979a19e8c13fe6404569a58555a233cdcd4dafa039b8f2bde89e014c0b12194e6c1c326ee0dfb8b EBUILD bash-9999.ebuild 9350 BLAKE2B e1e028bcef06fbbadaa200376a7d33bd2fa2b1c4ce5a5711805ea9b7bf3426a4785b147cc9cb1a8f2314b004ecef0d95c0b212a935946225b11e9334031e55eb SHA512 deced834f4d2cf6ed25405b45018fbd20e9da7cf2e64bba75979a19e8c13fe6404569a58555a233cdcd4dafa039b8f2bde89e014c0b12194e6c1c326ee0dfb8b MISC metadata.xml 963 BLAKE2B cadf4453d8e9f77353fcae360e6d2b0a254303ba4ee422bd799be1d44733ca2833c1a2cf21c0ce30fdca365e70f0bb295f946669483c1d284ffa89fbffdf6a50 SHA512 51079c00a5d93eed4169a69fdae98c292df842de195bb8880319a582bf37ed1d1574ae57805ccf57baf0880391871c07b794487806257da3eab19744d8090e35 diff --git a/app-shells/bash/bash-5.2_p2-r2.ebuild b/app-shells/bash/bash-5.2_p2-r2.ebuild index 897cf5324a38..c79b71ca70ef 100644 --- a/app-shells/bash/bash-5.2_p2-r2.ebuild +++ b/app-shells/bash/bash-5.2_p2-r2.ebuild @@ -108,7 +108,8 @@ PATCHES=( # Patches from Chet sent to bash-bug ml "${FILESDIR}"/${PN}-5.0-syslog-history-extern.patch - "${FILESDIR}"/${PN}-5.2_p2-fixes-for-extglob-in-compat-mode.patch + "${FILESDIR}"/${P}-fix-for-brackets-in-nested-parameter-expansions.patch + "${FILESDIR}"/${P}-fixes-for-extglob-in-compat-mode.patch ) pkg_setup() { diff --git a/app-shells/bash/files/bash-5.2_p2-fix-for-brackets-in-nested-parameter-expansions.patch b/app-shells/bash/files/bash-5.2_p2-fix-for-brackets-in-nested-parameter-expansions.patch new file mode 100644 index 000000000000..9c1b03f8b2df --- /dev/null +++ b/app-shells/bash/files/bash-5.2_p2-fix-for-brackets-in-nested-parameter-expansions.patch @@ -0,0 +1,41 @@ +https://git.savannah.gnu.org/cgit/bash.git/commit/?h=devel&id=22f21b760ed90eb77c3756e6ccf39b73c84f532a + +--- subst.c ++++ subst.c +@@ -1798,6 +1798,9 @@ extract_heredoc_dolbrace_string (string, sindex, quoted, flags) + return (result); + } + ++#define PARAMEXPNEST_MAX 32 // for now ++static int dbstate[PARAMEXPNEST_MAX]; ++ + /* Extract a parameter expansion expression within ${ and } from STRING. + Obey the Posix.2 rules for finding the ending `}': count braces while + skipping over enclosed quoted strings and command substitutions. +@@ -1828,6 +1831,8 @@ extract_dollar_brace_string (string, sindex, quoted, flags) + if (quoted == Q_HERE_DOCUMENT && dolbrace_state == DOLBRACE_QUOTE && (flags & SX_NOALLOC) == 0) + return (extract_heredoc_dolbrace_string (string, sindex, quoted, flags)); + ++ dbstate[0] = dolbrace_state; ++ + pass_character = 0; + nesting_level = 1; + slen = strlen (string + *sindex) + *sindex; +@@ -1852,6 +1857,8 @@ extract_dollar_brace_string (string, sindex, quoted, flags) + + if (string[i] == '$' && string[i+1] == LBRACE) + { ++ if (nesting_level < PARAMEXPNEST_MAX) ++ dbstate[nesting_level] = dolbrace_state; + nesting_level++; + i += 2; + if (dolbrace_state == DOLBRACE_QUOTE || dolbrace_state == DOLBRACE_WORD) +@@ -1864,6 +1871,7 @@ extract_dollar_brace_string (string, sindex, quoted, flags) + nesting_level--; + if (nesting_level == 0) + break; ++ dolbrace_state = (nesting_level < PARAMEXPNEST_MAX) ? dbstate[nesting_level] : dbstate[0]; /* Guess using initial state */ + i++; + continue; + } + diff --git a/app-shells/bash/files/bash-5.2_p2-fixes-for-extglob-in-compat-mode.patch b/app-shells/bash/files/bash-5.2_p2-fixes-for-extglob-in-compat-mode.patch index 06415b5cdaa4..16393c79af8b 100644 --- a/app-shells/bash/files/bash-5.2_p2-fixes-for-extglob-in-compat-mode.patch +++ b/app-shells/bash/files/bash-5.2_p2-fixes-for-extglob-in-compat-mode.patch @@ -213,44 +213,6 @@ https://git.savannah.gnu.org/cgit/bash.git/commit/?h=devel&id=22f21b760ed90eb77c This file is part of GNU Bash, the Bourne Again SHell. ---- subst.c -+++ subst.c -@@ -1798,6 +1798,9 @@ extract_heredoc_dolbrace_string (string, sindex, quoted, flags) - return (result); - } - -+#define PARAMEXPNEST_MAX 32 // for now -+static int dbstate[PARAMEXPNEST_MAX]; -+ - /* Extract a parameter expansion expression within ${ and } from STRING. - Obey the Posix.2 rules for finding the ending `}': count braces while - skipping over enclosed quoted strings and command substitutions. -@@ -1828,6 +1831,8 @@ extract_dollar_brace_string (string, sindex, quoted, flags) - if (quoted == Q_HERE_DOCUMENT && dolbrace_state == DOLBRACE_QUOTE && (flags & SX_NOALLOC) == 0) - return (extract_heredoc_dolbrace_string (string, sindex, quoted, flags)); - -+ dbstate[0] = dolbrace_state; -+ - pass_character = 0; - nesting_level = 1; - slen = strlen (string + *sindex) + *sindex; -@@ -1852,6 +1857,8 @@ extract_dollar_brace_string (string, sindex, quoted, flags) - - if (string[i] == '$' && string[i+1] == LBRACE) - { -+ if (nesting_level < PARAMEXPNEST_MAX) -+ dbstate[nesting_level] = dolbrace_state; - nesting_level++; - i += 2; - if (dolbrace_state == DOLBRACE_QUOTE || dolbrace_state == DOLBRACE_WORD) -@@ -1864,6 +1871,7 @@ extract_dollar_brace_string (string, sindex, quoted, flags) - nesting_level--; - if (nesting_level == 0) - break; -+ dolbrace_state = (nesting_level < PARAMEXPNEST_MAX) ? dbstate[nesting_level] : dbstate[0]; /* Guess using initial state */ - i++; - continue; - } --- tests/extglob.right +++ tests/extglob.right @@ -182,3 +182,10 @@ no dotglob: .a .foo bar |