Changeset 9136260 for patches/bash-4.3-branch_update-2.patch
- Timestamp:
- Apr 25, 2014, 9:35:38 PM (11 years ago)
- Branches:
- clfs-3.0.0-systemd, clfs-3.0.0-sysvinit, master, systemd, sysvinit
- Children:
- 18d769e
- Parents:
- 0c8ebac (diff), bfa06fb (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
patches/bash-4.3-branch_update-2.patch
r0c8ebac r9136260 4 4 Origin: Upstream 5 5 Upstream Status: Applied 6 Description: Contains all upstream patches up to 4.3-0 086 Description: Contains all upstream patches up to 4.3-011 7 7 8 8 diff -Naur bash-4.3.orig/arrayfunc.c bash-4.3/arrayfunc.c 9 9 --- bash-4.3.orig/arrayfunc.c 2013-08-02 15:19:59.000000000 -0500 10 +++ bash-4.3/arrayfunc.c 2014-0 3-30 08:38:16.233599982 -050010 +++ bash-4.3/arrayfunc.c 2014-04-24 20:08:49.474314102 -0500 11 11 @@ -597,6 +597,11 @@ 12 12 if (assoc_p (var)) … … 21 21 } 22 22 23 diff -Naur bash-4.3.orig/externs.h bash-4.3/externs.h 24 --- bash-4.3.orig/externs.h 2014-01-02 13:58:20.000000000 -0600 25 +++ bash-4.3/externs.h 2014-04-24 20:08:54.927367945 -0500 26 @@ -324,6 +324,7 @@ 27 extern char *sh_backslash_quote __P((char *, const char *, int)); 28 extern char *sh_backslash_quote_for_double_quotes __P((char *)); 29 extern int sh_contains_shell_metas __P((char *)); 30 +extern int sh_contains_quotes __P((char *)); 31 32 /* declarations for functions defined in lib/sh/spell.c */ 33 extern int spname __P((char *, char *)); 23 34 diff -Naur bash-4.3.orig/jobs.c bash-4.3/jobs.c 24 35 --- bash-4.3.orig/jobs.c 2014-01-10 08:05:34.000000000 -0600 25 +++ bash-4.3/jobs.c 2014-0 3-30 08:38:14.340206206-050036 +++ bash-4.3/jobs.c 2014-04-24 20:08:47.897732294 -0500 26 37 @@ -4374,7 +4374,7 @@ 27 38 void … … 35 46 diff -Naur bash-4.3.orig/lib/glob/glob.c bash-4.3/lib/glob/glob.c 36 47 --- bash-4.3.orig/lib/glob/glob.c 2014-01-31 20:43:51.000000000 -0600 37 +++ bash-4.3/lib/glob/glob.c 2014-0 3-30 08:38:18.153657420 -050048 +++ bash-4.3/lib/glob/glob.c 2014-04-24 20:08:51.054232810 -0500 38 49 @@ -179,42 +179,50 @@ 39 50 char *pat, *dname; … … 147 158 diff -Naur bash-4.3.orig/lib/glob/gmisc.c bash-4.3/lib/glob/gmisc.c 148 159 --- bash-4.3.orig/lib/glob/gmisc.c 2013-10-28 13:45:25.000000000 -0500 149 +++ bash-4.3/lib/glob/gmisc.c 2014-0 3-30 08:38:18.153657420 -0500160 +++ bash-4.3/lib/glob/gmisc.c 2014-04-24 20:08:51.054232810 -0500 150 161 @@ -210,6 +210,7 @@ 151 162 case '+': … … 156 167 default: 157 168 return 0; 169 diff -Naur bash-4.3.orig/lib/readline/display.c bash-4.3/lib/readline/display.c 170 --- bash-4.3.orig/lib/readline/display.c 2013-12-27 12:10:56.000000000 -0600 171 +++ bash-4.3/lib/readline/display.c 2014-04-24 20:08:56.493955444 -0500 172 @@ -2677,7 +2677,8 @@ 173 { 174 if (_rl_echoing_p) 175 { 176 - _rl_move_vert (_rl_vis_botlin); 177 + if (_rl_vis_botlin > 0) /* minor optimization plus bug fix */ 178 + _rl_move_vert (_rl_vis_botlin); 179 _rl_vis_botlin = 0; 180 fflush (rl_outstream); 181 rl_restart_output (1, 0); 158 182 diff -Naur bash-4.3.orig/lib/readline/readline.c bash-4.3/lib/readline/readline.c 159 183 --- bash-4.3.orig/lib/readline/readline.c 2013-10-28 13:58:06.000000000 -0500 160 +++ bash-4.3/lib/readline/readline.c 2014-0 3-30 08:38:10.556751185-0500184 +++ bash-4.3/lib/readline/readline.c 2014-04-24 20:08:44.507909810 -0500 161 185 @@ -744,7 +744,8 @@ 162 186 r = _rl_subseq_result (r, cxt->oldmap, cxt->okey, (cxt->flags & KSEQ_SUBSEQ)); … … 178 202 _rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign); 179 203 #endif 204 diff -Naur bash-4.3.orig/lib/sh/shquote.c bash-4.3/lib/sh/shquote.c 205 --- bash-4.3.orig/lib/sh/shquote.c 2013-03-31 20:53:32.000000000 -0500 206 +++ bash-4.3/lib/sh/shquote.c 2014-04-24 20:08:54.927367945 -0500 207 @@ -311,3 +311,17 @@ 208 209 return (0); 210 } 211 + 212 +int 213 +sh_contains_quotes (string) 214 + char *string; 215 +{ 216 + char *s; 217 + 218 + for (s = string; s && *s; s++) 219 + { 220 + if (*s == '\'' || *s == '"' || *s == '\\') 221 + return 1; 222 + } 223 + return 0; 224 +} 180 225 diff -Naur bash-4.3.orig/parse.y bash-4.3/parse.y 181 226 --- bash-4.3.orig/parse.y 2014-02-11 08:42:10.000000000 -0600 182 +++ bash-4.3/parse.y 2014-03-30 08:38:12.463477417 -0500 227 +++ bash-4.3/parse.y 2014-04-24 20:08:52.607486462 -0500 228 @@ -2424,7 +2424,7 @@ 229 not already end in an EOF character. */ 230 if (shell_input_line_terminator != EOF) 231 { 232 - if (shell_input_line_size < SIZE_MAX && shell_input_line_len > shell_input_line_size - 3) 233 + if (shell_input_line_size < SIZE_MAX-3 && (shell_input_line_len+3 > shell_input_line_size)) 234 shell_input_line = (char *)xrealloc (shell_input_line, 235 1 + (shell_input_line_size += 2)); 236 183 237 @@ -3398,7 +3398,7 @@ 184 238 within a double-quoted ${...} construct "an even number of … … 192 246 diff -Naur bash-4.3.orig/patchlevel.h bash-4.3/patchlevel.h 193 247 --- bash-4.3.orig/patchlevel.h 2012-12-29 09:47:57.000000000 -0600 194 +++ bash-4.3/patchlevel.h 2014-0 3-30 08:38:18.153657420-0500248 +++ bash-4.3/patchlevel.h 2014-04-24 20:08:56.493955444 -0500 195 249 @@ -25,6 +25,6 @@ 196 250 regexp `^#define[ ]*PATCHLEVEL', since that's what support/mkversion.sh … … 198 252 199 253 -#define PATCHLEVEL 0 200 +#define PATCHLEVEL 8254 +#define PATCHLEVEL 11 201 255 202 256 #endif /* _PATCHLEVEL_H_ */ 257 diff -Naur bash-4.3.orig/pcomplete.c bash-4.3/pcomplete.c 258 --- bash-4.3.orig/pcomplete.c 2013-08-26 14:23:45.000000000 -0500 259 +++ bash-4.3/pcomplete.c 2014-04-24 20:08:54.927367945 -0500 260 @@ -183,6 +183,7 @@ 261 262 COMPSPEC *pcomp_curcs; 263 const char *pcomp_curcmd; 264 +const char *pcomp_curtxt; 265 266 #ifdef DEBUG 267 /* Debugging code */ 268 @@ -753,6 +754,32 @@ 269 quoted strings. */ 270 dfn = (*rl_filename_dequoting_function) ((char *)text, rl_completion_quote_character); 271 } 272 + /* Intended to solve a mismatched assumption by bash-completion. If 273 + the text to be completed is empty, but bash-completion turns it into 274 + a quoted string ('') assuming that this code will dequote it before 275 + calling readline, do the dequoting. */ 276 + else if (iscompgen && iscompleting && 277 + pcomp_curtxt && *pcomp_curtxt == 0 && 278 + text && (*text == '\'' || *text == '"') && text[1] == text[0] && text[2] == 0 && 279 + rl_filename_dequoting_function) 280 + dfn = (*rl_filename_dequoting_function) ((char *)text, rl_completion_quote_character); 281 + /* Another mismatched assumption by bash-completion. If compgen is being 282 + run as part of bash-completion, and the argument to compgen is not 283 + the same as the word originally passed to the programmable completion 284 + code, dequote the argument if it has quote characters. It's an 285 + attempt to detect when bash-completion is quoting its filename 286 + argument before calling compgen. */ 287 + /* We could check whether gen_shell_function_matches is in the call 288 + stack by checking whether the gen-shell-function-matches tag is in 289 + the unwind-protect stack, but there's no function to do that yet. 290 + We could simply check whether we're executing in a function by 291 + checking variable_context, and may end up doing that. */ 292 + else if (iscompgen && iscompleting && rl_filename_dequoting_function && 293 + pcomp_curtxt && text && 294 + STREQ (pcomp_curtxt, text) == 0 && 295 + variable_context && 296 + sh_contains_quotes (text)) /* guess */ 297 + dfn = (*rl_filename_dequoting_function) ((char *)text, rl_completion_quote_character); 298 else 299 dfn = savestring (text); 300 } 301 @@ -1522,7 +1549,7 @@ 302 COMPSPEC **lastcs; 303 { 304 COMPSPEC *cs, *oldcs; 305 - const char *oldcmd; 306 + const char *oldcmd, *oldtxt; 307 STRINGLIST *ret; 308 309 cs = progcomp_search (ocmd); 310 @@ -1545,14 +1572,17 @@ 311 312 oldcs = pcomp_curcs; 313 oldcmd = pcomp_curcmd; 314 + oldtxt = pcomp_curtxt; 315 316 pcomp_curcs = cs; 317 pcomp_curcmd = cmd; 318 + pcomp_curtxt = word; 319 320 ret = gen_compspec_completions (cs, cmd, word, start, end, foundp); 321 322 pcomp_curcs = oldcs; 323 pcomp_curcmd = oldcmd; 324 + pcomp_curtxt = oldtxt; 325 326 /* We need to conditionally handle setting *retryp here */ 327 if (retryp) 203 328 diff -Naur bash-4.3.orig/test.c bash-4.3/test.c 204 329 --- bash-4.3.orig/test.c 2014-02-04 15:52:58.000000000 -0600 205 +++ bash-4.3/test.c 2014-0 3-30 08:38:04.859903460-0500330 +++ bash-4.3/test.c 2014-04-24 20:08:39.174864532 -0500 206 331 @@ -646,8 +646,8 @@ 207 332 return (v && invisible_p (v) == 0 && var_isset (v) ? TRUE : FALSE); … … 225 350 diff -Naur bash-4.3.orig/trap.c bash-4.3/trap.c 226 351 --- bash-4.3.orig/trap.c 2014-02-05 09:03:21.000000000 -0600 227 +++ bash-4.3/trap.c 2014-0 3-30 08:38:06.756626741-0500352 +++ bash-4.3/trap.c 2014-04-24 20:08:41.401408370 -0500 228 353 @@ -920,7 +920,8 @@ 229 354 subst_assign_varlist = 0; … … 248 373 diff -Naur bash-4.3.orig/y.tab.c bash-4.3/y.tab.c 249 374 --- bash-4.3.orig/y.tab.c 2014-02-11 09:57:47.000000000 -0600 250 +++ bash-4.3/y.tab.c 2014-03-30 08:38:12.463477417 -0500 375 +++ bash-4.3/y.tab.c 2014-04-24 20:08:52.607486462 -0500 376 @@ -4736,7 +4736,7 @@ 377 not already end in an EOF character. */ 378 if (shell_input_line_terminator != EOF) 379 { 380 - if (shell_input_line_size < SIZE_MAX && shell_input_line_len > shell_input_line_size - 3) 381 + if (shell_input_line_size < SIZE_MAX-3 && (shell_input_line_len+3 > shell_input_line_size)) 382 shell_input_line = (char *)xrealloc (shell_input_line, 383 1 + (shell_input_line_size += 2)); 384 251 385 @@ -5710,7 +5710,7 @@ 252 386 within a double-quoted ${...} construct "an even number of
Note:
See TracChangeset
for help on using the changeset viewer.