diff options
author | Lars Wendler <polynomial-c@gentoo.org> | 2014-05-07 08:23:13 +0000 |
---|---|---|
committer | Lars Wendler <polynomial-c@gentoo.org> | 2014-05-07 08:23:13 +0000 |
commit | eb5751fcff82ec8d9faad65906613601548623e8 (patch) | |
tree | 731730a1aeb6bbddc6fa46b690eb4b9a9aa8ce89 /app-shells | |
parent | Bump to 4.7.2, thanks to slepnoga. (diff) | |
download | gentoo-2-eb5751fcff82ec8d9faad65906613601548623e8.tar.gz gentoo-2-eb5751fcff82ec8d9faad65906613601548623e8.tar.bz2 gentoo-2-eb5751fcff82ec8d9faad65906613601548623e8.zip |
Added another upstream fix. Removed old
(Portage version: 2.2.10/cvs/Linux x86_64, signed Manifest commit with key 0x981CA6FC)
Diffstat (limited to 'app-shells')
-rw-r--r-- | app-shells/bash/ChangeLog | 8 | ||||
-rw-r--r-- | app-shells/bash/bash-4.3_p11-r3.ebuild (renamed from app-shells/bash/bash-4.3_p11-r1.ebuild) | 6 | ||||
-rw-r--r-- | app-shells/bash/files/bash-4.3-extglob-directory.patch | 100 |
3 files changed, 111 insertions, 3 deletions
diff --git a/app-shells/bash/ChangeLog b/app-shells/bash/ChangeLog index 0ac1e6cf598f..ca4661f8fd43 100644 --- a/app-shells/bash/ChangeLog +++ b/app-shells/bash/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for app-shells/bash # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/ChangeLog,v 1.366 2014/04/26 20:14:20 polynomial-c Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/ChangeLog,v 1.367 2014/05/07 08:23:12 polynomial-c Exp $ + +*bash-4.3_p11-r3 (07 May 2014) + + 07 May 2014; Lars Wendler <polynomial-c@gentoo.org> -bash-4.3_p11-r1.ebuild, + +bash-4.3_p11-r3.ebuild, +files/bash-4.3-extglob-directory.patch: + Added another upstream fix. Removed old. *bash-4.3_p11-r2 (26 Apr 2014) diff --git a/app-shells/bash/bash-4.3_p11-r1.ebuild b/app-shells/bash/bash-4.3_p11-r3.ebuild index 139ecd59f81e..1eb6a8d6ce51 100644 --- a/app-shells/bash/bash-4.3_p11-r1.ebuild +++ b/app-shells/bash/bash-4.3_p11-r3.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/bash-4.3_p11-r1.ebuild,v 1.1 2014/04/16 09:39:12 polynomial-c Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/bash-4.3_p11-r3.ebuild,v 1.1 2014/05/07 08:23:12 polynomial-c Exp $ EAPI="4" @@ -83,7 +83,9 @@ src_prepare() { sed -i -r '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in || die touch -r . doc/* - epatch "${FILESDIR}"/${PN}-4.3-jobs-run-sigchld-trap.patch + epatch "${FILESDIR}"/${PN}-4.3-jobs-run-sigchld-trap.patch \ + "${FILESDIR}"/${PN}-4.3-complete-dequoting.patch \ + "${FILESDIR}"/${PN}-4.3-extglob-directory.patch epatch_user } diff --git a/app-shells/bash/files/bash-4.3-extglob-directory.patch b/app-shells/bash/files/bash-4.3-extglob-directory.patch new file mode 100644 index 000000000000..aa3e49a09114 --- /dev/null +++ b/app-shells/bash/files/bash-4.3-extglob-directory.patch @@ -0,0 +1,100 @@ +*** ../bash-4.3-patched/lib/glob/glob.c 2014-03-28 10:54:23.000000000 -0400 +--- lib/glob/glob.c 2014-05-02 10:24:28.000000000 -0400 +*************** +*** 124,127 **** +--- 124,129 ---- + extern wchar_t *glob_patscan_wc __P((wchar_t *, wchar_t *, int)); + ++ extern char *glob_dirscan __P((char *, int)); ++ + /* Compile `glob_loop.c' for single-byte characters. */ + #define CHAR unsigned char +*************** +*** 188,191 **** +--- 190,196 ---- + pe = glob_patscan (pp, se, 0); /* end of extglob pattern (( */ + /* we should check for invalid extglob pattern here */ ++ if (pe == 0) ++ return 0; ++ + /* if pe != se we have more of the pattern at the end of the extglob + pattern. Check the easy case first ( */ +*************** +*** 1016,1020 **** + char **result; + unsigned int result_size; +! char *directory_name, *filename, *dname; + unsigned int directory_len; + int free_dirname; /* flag */ +--- 1021,1025 ---- + char **result; + unsigned int result_size; +! char *directory_name, *filename, *dname, *fn; + unsigned int directory_len; + int free_dirname; /* flag */ +*************** +*** 1032,1035 **** +--- 1037,1052 ---- + /* Find the filename. */ + filename = strrchr (pathname, '/'); ++ #if defined (EXTENDED_GLOB) ++ if (filename && extended_glob) ++ { ++ fn = glob_dirscan (pathname, '/'); ++ #if DEBUG_MATCHING ++ if (fn != filename) ++ fprintf (stderr, "glob_filename: glob_dirscan: fn (%s) != filename (%s)\n", fn ? fn : "(null)", filename); ++ #endif ++ filename = fn; ++ } ++ #endif ++ + if (filename == NULL) + { +*** ../bash-4.3-patched/lib/glob/gmisc.c 2014-03-28 10:54:23.000000000 -0400 +--- lib/glob/gmisc.c 2014-05-02 09:35:57.000000000 -0400 +*************** +*** 43,46 **** +--- 43,48 ---- + #define WRPAREN L')' + ++ extern char *glob_patscan __P((char *, char *, int)); ++ + /* Return 1 of the first character of WSTRING could match the first + character of pattern WPAT. Wide character version. */ +*************** +*** 376,377 **** +--- 378,410 ---- + return matlen; + } ++ ++ /* Skip characters in PAT and return the final occurrence of DIRSEP. This ++ is only called when extended_glob is set, so we have to skip over extglob ++ patterns x(...) */ ++ char * ++ glob_dirscan (pat, dirsep) ++ char *pat; ++ int dirsep; ++ { ++ char *p, *d, *pe, *se; ++ ++ d = pe = se = 0; ++ for (p = pat; p && *p; p++) ++ { ++ if (extglob_pattern_p (p)) ++ { ++ if (se == 0) ++ se = p + strlen (p) - 1; ++ pe = glob_patscan (p + 2, se, 0); ++ if (pe == 0) ++ continue; ++ else if (*pe == 0) ++ break; ++ p = pe - 1; /* will do increment above */ ++ continue; ++ } ++ if (*p == dirsep) ++ d = p; ++ } ++ return d; ++ } |