bash51-016 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. BASH PATCH REPORT
  2. =================
  3. Bash-Release: 5.1
  4. Patch-ID: bash51-016
  5. Bug-Reported-by: Vincent Menegaux <vincent.menegaux@gmail.com>
  6. Bug-Reference-ID:
  7. Bug-Reference-URL: https://savannah.gnu.org/patch/?10070
  8. Bug-Description:
  9. Multiple `!' tokens should toggle negation of an expression in a [[
  10. conditional command, instead of simply negating the expression.
  11. Patch (apply with `patch -p0'):
  12. *** ../bash-20210515/parse.y 2021-04-21 15:32:50.000000000 -0400
  13. --- parse.y 2021-05-24 11:53:30.000000000 -0400
  14. ***************
  15. *** 4797,4801 ****
  16. term = cond_term ();
  17. if (term)
  18. ! term->flags |= CMD_INVERT_RETURN;
  19. }
  20. else if (tok == WORD && yylval.word->word[0] == '-' && yylval.word->word[1] && yylval.word->word[2] == 0 && test_unop (yylval.word->word))
  21. --- 4797,4801 ----
  22. term = cond_term ();
  23. if (term)
  24. ! term->flags ^= CMD_INVERT_RETURN;
  25. }
  26. else if (tok == WORD && yylval.word->word[0] == '-' && yylval.word->word[1] && yylval.word->word[2] == 0 && test_unop (yylval.word->word))
  27. *** ../bash-20210515/y.tab.c 2021-05-14 15:50:41.000000000 -0400
  28. --- y.tab.c 2021-05-24 16:35:55.000000000 -0400
  29. ***************
  30. *** 7091,7095 ****
  31. term = cond_term ();
  32. if (term)
  33. ! term->flags |= CMD_INVERT_RETURN;
  34. }
  35. else if (tok == WORD && yylval.word->word[0] == '-' && yylval.word->word[1] && yylval.word->word[2] == 0 && test_unop (yylval.word->word))
  36. --- 7091,7095 ----
  37. term = cond_term ();
  38. if (term)
  39. ! term->flags ^= CMD_INVERT_RETURN;
  40. }
  41. else if (tok == WORD && yylval.word->word[0] == '-' && yylval.word->word[1] && yylval.word->word[2] == 0 && test_unop (yylval.word->word))
  42. *** ../bash-5.1/patchlevel.h 2020-06-22 14:51:03.000000000 -0400
  43. --- patchlevel.h 2020-10-01 11:01:28.000000000 -0400
  44. ***************
  45. *** 26,30 ****
  46. looks for to find the patch level (for the sccs version string). */
  47. ! #define PATCHLEVEL 15
  48. #endif /* _PATCHLEVEL_H_ */
  49. --- 26,30 ----
  50. looks for to find the patch level (for the sccs version string). */
  51. ! #define PATCHLEVEL 16
  52. #endif /* _PATCHLEVEL_H_ */