bash44-021 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. BASH PATCH REPORT
  2. =================
  3. Bash-Release: 4.4
  4. Patch-ID: bash44-021
  5. Bug-Reported-by: werner@suse.de
  6. Bug-Reference-ID: <201803281402.w2SE2VOa000476@noether.suse.de>
  7. Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2018-03/msg00196.html
  8. Bug-Description:
  9. A SIGINT received inside a SIGINT trap handler can possibly cause the
  10. shell to loop.
  11. Patch (apply with `patch -p0'):
  12. *** ../bash-20180329/jobs.c 2018-02-11 18:07:22.000000000 -0500
  13. --- jobs.c 2018-04-02 14:24:21.000000000 -0400
  14. ***************
  15. *** 2690,2694 ****
  16. if (job_control == 0 || (subshell_environment&SUBSHELL_COMSUB))
  17. {
  18. ! old_sigint_handler = set_signal_handler (SIGINT, wait_sigint_handler);
  19. waiting_for_child = 0;
  20. if (old_sigint_handler == SIG_IGN)
  21. --- 2690,2704 ----
  22. if (job_control == 0 || (subshell_environment&SUBSHELL_COMSUB))
  23. {
  24. ! SigHandler *temp_sigint_handler;
  25. !
  26. ! temp_sigint_handler = set_signal_handler (SIGINT, wait_sigint_handler);
  27. ! if (temp_sigint_handler == wait_sigint_handler)
  28. ! {
  29. ! #if defined (DEBUG)
  30. ! internal_warning ("wait_for: recursively setting old_sigint_handler to wait_sigint_handler: running_trap = %d", running_trap);
  31. ! #endif
  32. ! }
  33. ! else
  34. ! old_sigint_handler = temp_sigint_handler;
  35. waiting_for_child = 0;
  36. if (old_sigint_handler == SIG_IGN)
  37. *** ../bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400
  38. --- patchlevel.h 2016-10-01 11:01:28.000000000 -0400
  39. ***************
  40. *** 26,30 ****
  41. looks for to find the patch level (for the sccs version string). */
  42. ! #define PATCHLEVEL 20
  43. #endif /* _PATCHLEVEL_H_ */
  44. --- 26,30 ----
  45. looks for to find the patch level (for the sccs version string). */
  46. ! #define PATCHLEVEL 21
  47. #endif /* _PATCHLEVEL_H_ */