You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

59 lines
1.8 KiB

  1. BASH PATCH REPORT
  2. =================
  3. Bash-Release: 5.0
  4. Patch-ID: bash50-011
  5. Bug-Reported-by: Matt Whitlock
  6. Bug-Reference-ID:
  7. Bug-Reference-URL: https://savannah.gnu.org/support/?109671
  8. Bug-Description:
  9. The conditional command did not perform appropriate quoted null character
  10. removal on its arguments, causing syntax errors and attempts to stat
  11. invalid pathnames.
  12. Patch (apply with `patch -p0'):
  13. *** a/subst.c 2018-12-22 17:43:37.000000000 -0500
  14. --- b/subst.c 2019-04-14 13:25:41.000000000 -0400
  15. ***************
  16. *** 3626,3630 ****
  17. SPECIAL is 2, this is an rhs argument for the =~ operator, and should
  18. be quoted appropriately for regcomp/regexec. The caller is responsible
  19. ! for removing the backslashes if the unquoted word is needed later. */
  20. char *
  21. cond_expand_word (w, special)
  22. --- 3642,3648 ----
  23. SPECIAL is 2, this is an rhs argument for the =~ operator, and should
  24. be quoted appropriately for regcomp/regexec. The caller is responsible
  25. ! for removing the backslashes if the unquoted word is needed later. In
  26. ! any case, since we don't perform word splitting, we need to do quoted
  27. ! null character removal. */
  28. char *
  29. cond_expand_word (w, special)
  30. ***************
  31. *** 3647,3650 ****
  32. --- 3665,3670 ----
  33. if (special == 0) /* LHS */
  34. {
  35. + if (l->word)
  36. + word_list_remove_quoted_nulls (l);
  37. dequote_list (l);
  38. r = string_list (l);
  39. *** a/patchlevel.h 2016-06-22 14:51:03.000000000 -0400
  40. --- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400
  41. ***************
  42. *** 26,30 ****
  43. looks for to find the patch level (for the sccs version string). */
  44. ! #define PATCHLEVEL 10
  45. #endif /* _PATCHLEVEL_H_ */
  46. --- 26,30 ----
  47. looks for to find the patch level (for the sccs version string). */
  48. ! #define PATCHLEVEL 11
  49. #endif /* _PATCHLEVEL_H_ */