Hello community,
here is the log from the commit of package bash for openSUSE:Factory
checked in at Wed Jul 8 20:51:49 CEST 2009.
--------
--- bash/bash.changes 2009-06-09 18:20:36.000000000 +0200
+++ bash/bash.changes 2009-07-02 15:05:24.000000000 +0200
@@ -1,0 +2,6 @@
+Thu Jul 2 14:45:19 CEST 2009 - werner@suse.de
+
+- Add fix from bash maintainer for closing memory leak in read
+ builtin (bnc#510288)
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
New:
----
bash-4.0.24-memleak-read.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ bash.spec ++++++
--- /var/tmp/diff_new_pack.IHyHsH/_old 2009-07-08 20:46:10.000000000 +0200
+++ /var/tmp/diff_new_pack.IHyHsH/_new 2009-07-08 20:46:10.000000000 +0200
@@ -28,7 +28,7 @@
Suggests: command-not-found
AutoReqProv: on
Version: 4.0
-Release: 12
+Release: 13
Summary: The GNU Bourne-Again Shell
Url: http://www.gnu.org/software/bash/bash.html
Source0: ftp://ftp.gnu.org/gnu/bash/bash-%{bash_vers}.tar.bz2
@@ -62,6 +62,7 @@
Patch40: bash-4.0.10-typo.patch
Patch41: bash-4.0.24-globstar-nulldir.patch
Patch42: bash-4.0.24-acl.dif
+Patch43: bash-4.0.24-memleak-read.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%global _sysconfdir /etc
%global _incdir %{_includedir}
@@ -90,7 +91,7 @@
Provides: bash:%{_infodir}/bash.info.gz
PreReq: %install_info_prereq
Version: 4.0
-Release: 12
+Release: 13
AutoReqProv: on
%description -n bash-doc
@@ -110,7 +111,7 @@
Summary: Include Files mandatory for Development of bash loadable builtins
Group: Development/Languages/C and C++
Version: 4.0
-Release: 1
+Release: 2
AutoReqProv: on
%description -n bash-devel
@@ -130,7 +131,7 @@
Summary: Loadable bash builtins
Group: System/Shells
Version: 4.0
-Release: 1
+Release: 2
AutoReqProv: on
%description -n bash-loadables
@@ -199,7 +200,7 @@
Group: System/Libraries
Provides: bash:/%{_lib}/libreadline.so.%{rl_major}
Version: 6.0
-Release: 12
+Release: 13
Recommends: readline-doc = %{version}
# bug437293
%ifarch ppc64
@@ -228,7 +229,7 @@
Group: Development/Libraries/C and C++
Provides: bash:%{_libdir}/libreadline.a
Version: 6.0
-Release: 12
+Release: 13
Requires: libreadline6 = %{version}
Requires: ncurses-devel
Recommends: readline-doc = %{version}
@@ -257,7 +258,7 @@
Provides: readline:%{_infodir}/readline.info.gz
PreReq: %install_info_prereq
Version: 6.0
-Release: 12
+Release: 13
AutoReqProv: on
%description -n readline-doc
@@ -277,9 +278,6 @@
test -e $p || break
echo Patch $p
patch -s -p0 < $p
- grep -q '^--- lib/readline/' $p || continue
- sed -r '\@^\*\*\*[[:blank:]][^[:blank:]]*patchlevel.h@,\@^\*\*\*[[:blank:]][^[:digit:]]@d' < $p | \
- patch -d ../readline-%{rl_vers}/ -s -p2
done
unset p
%patch1 -p0 -b .manual
@@ -302,6 +300,7 @@
%patch40 -p0 -b .typo
%patch41 -p0 -b .globstar
%patch42 -p0 -b .acl
+%patch43 -p0 -b .leak
%patch0 -p0
cd ../readline-%{rl_vers}
for p in ../readline-%{rl_vers}-patches/*; do
++++++ bash-4.0.24-memleak-read.patch ++++++
--- builtins/read.def
+++ builtins/read.def 2009-07-02 14:29:42.017901989 +0200
@@ -763,7 +763,10 @@ assign_vars:
if (*input_string == 0)
tofree = input_string = t;
else
- input_string = strip_trailing_ifs_whitespace (t1, ifs_chars, saw_escape);
+ {
+ input_string = strip_trailing_ifs_whitespace (t1, ifs_chars, saw_escape);
+ tofree = t;
+ }
}
#endif
++++++ readline-6.0-patches.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readline-6.0-patches/readline60-001 new/readline-6.0-patches/readline60-001
--- old/readline-6.0-patches/readline60-001 1970-01-01 01:00:00.000000000 +0100
+++ new/readline-6.0-patches/readline60-001 2009-06-23 15:04:33.000000000 +0200
@@ -0,0 +1,79 @@
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 6.0
+Patch-ID: readline60-001
+
+Bug-Reported-by: Nicolai Lissner
+Bug-Reference-ID: <20090412020510.GA29658@lilith>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-04/msg00104.html
+
+Bug-Description:
+
+If a SIGWINCH arrives while bash is performing redisplay, multi-line prompts
+are displayed incorrectly due to the display code being called recursively.
+
+Patch:
+
+*** ../readline-6.0/readline.h 2009-01-04 14:32:33.000000000 -0500
+--- readline.h 2009-04-13 08:47:00.000000000 -0400
+***************
+*** 815,820 ****
+ #define RL_STATE_MULTIKEY 0x200000 /* reading multiple-key command */
+ #define RL_STATE_VICMDONCE 0x400000 /* entered vi command mode at least once */
+
+! #define RL_STATE_DONE 0x800000 /* done; accepted line */
+
+ #define RL_SETSTATE(x) (rl_readline_state |= (x))
+--- 815,821 ----
+ #define RL_STATE_MULTIKEY 0x200000 /* reading multiple-key command */
+ #define RL_STATE_VICMDONCE 0x400000 /* entered vi command mode at least once */
++ #define RL_STATE_REDISPLAYING 0x800000 /* updating terminal display */
+
+! #define RL_STATE_DONE 0x1000000 /* done; accepted line */
+
+ #define RL_SETSTATE(x) (rl_readline_state |= (x))
+*** ../readline-6.0/display.c 2009-01-04 14:32:32.000000000 -0500
+--- display.c 2009-04-13 08:29:54.000000000 -0400
+***************
+*** 513,516 ****
+--- 513,517 ----
+ data structures. */
+ _rl_block_sigint ();
++ RL_SETSTATE (RL_STATE_REDISPLAYING);
+
+ if (!rl_display_prompt)
+***************
+*** 1237,1240 ****
+--- 1238,1242 ----
+ }
+
++ RL_UNSETSTATE (RL_STATE_REDISPLAYING);
+ _rl_release_sigint ();
+ }
+*** ../readline-6.0/terminal.c 2009-01-04 14:32:34.000000000 -0500
+--- terminal.c 2009-04-13 08:43:00.000000000 -0400
+***************
+*** 356,360 ****
+ if (CUSTOM_REDISPLAY_FUNC ())
+ rl_forced_update_display ();
+! else
+ _rl_redisplay_after_sigwinch ();
+ }
+--- 356,360 ----
+ if (CUSTOM_REDISPLAY_FUNC ())
+ rl_forced_update_display ();
+! else if (RL_ISSTATE(RL_STATE_REDISPLAYING) == 0)
+ _rl_redisplay_after_sigwinch ();
+ }
+*** ../readline-6.0/patchlevel 2008-11-18 11:01:14.000000000 -0500
+--- patchlevel 2009-05-09 12:01:06.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 0
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readline-6.0-patches/readline60-002 new/readline-6.0-patches/readline60-002
--- old/readline-6.0-patches/readline60-002 1970-01-01 01:00:00.000000000 +0100
+++ new/readline-6.0-patches/readline60-002 2009-06-23 15:04:43.000000000 +0200
@@ -0,0 +1,44 @@
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 6.0
+Patch-ID: readline60-002
+
+Bug-Reported-by: Matt Zyzik
+Bug-Reference-ID: <20090319015542.696F62B8E8@ice.filescope.com>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-03/msg00149.html
+
+Bug-Description:
+
+When not in a locale supporting multibyte characters, readline will occasionally
+not erase characters between the cursor position and the end of the line
+when killing text backwards.
+
+Patch:
+
+*** ../readline-6.0/display.c 2009-01-04 14:32:32.000000000 -0500
+--- display.c 2009-04-14 14:00:18.000000000 -0400
+***************
+*** 1775,1779 ****
+ adjust col_lendiff based on the difference between _rl_last_c_pos
+ and _rl_screenwidth */
+! if (col_lendiff && (_rl_last_c_pos < _rl_screenwidth))
+ #endif
+ {
+--- 1775,1779 ----
+ adjust col_lendiff based on the difference between _rl_last_c_pos
+ and _rl_screenwidth */
+! if (col_lendiff && ((MB_CUR_MAX == 1 || rl_byte_oriented) || (_rl_last_c_pos < _rl_screenwidth)))
+ #endif
+ {
+*** ../readline-6.0/patchlevel 2008-11-18 11:01:14.000000000 -0500
+--- patchlevel 2009-05-09 12:01:06.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 1
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readline-6.0-patches/readline60-003 new/readline-6.0-patches/readline60-003
--- old/readline-6.0-patches/readline60-003 1970-01-01 01:00:00.000000000 +0100
+++ new/readline-6.0-patches/readline60-003 2009-06-23 15:04:54.000000000 +0200
@@ -0,0 +1,58 @@
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 6.0
+Patch-ID: readline60-003
+
+Bug-Reported-by: Andreas Schwab
+Bug-Reference-ID:
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-04/msg00160.html
+
+Bug-Description:
+
+If the prompt length exactly matches the screen width, and the prompt ends
+with invisible characters, readline positions the cursor incorrectly.
+
+Patch:
+
+*** ../readline-6.0/display.c 2009-01-04 14:32:32.000000000 -0500
+--- display.c 2009-04-25 21:42:18.000000000 -0400
+***************
+*** 1895,1898 ****
+--- 1897,1904 ----
+ woff = WRAP_OFFSET (_rl_last_v_pos, wrap_offset);
+ cpos = _rl_last_c_pos;
++
++ if (cpos == 0 && cpos == new)
++ return;
++
+ #if defined (HANDLE_MULTIBYTE)
+ /* If we have multibyte characters, NEW is indexed by the buffer point in
+***************
+*** 1908,1914 ****
+ desired display position. */
+ if ((new > prompt_last_invisible) || /* XXX - don't use woff here */
+! (prompt_physical_chars > _rl_screenwidth &&
+ _rl_last_v_pos == prompt_last_screen_line &&
+! wrap_offset >= woff &&
+ new > (prompt_last_invisible-(_rl_screenwidth*_rl_last_v_pos)-wrap_offset)))
+ /* XXX last comparison might need to be >= */
+--- 1914,1920 ----
+ desired display position. */
+ if ((new > prompt_last_invisible) || /* XXX - don't use woff here */
+! (prompt_physical_chars >= _rl_screenwidth &&
+ _rl_last_v_pos == prompt_last_screen_line &&
+! wrap_offset >= woff && dpos >= woff &&
+ new > (prompt_last_invisible-(_rl_screenwidth*_rl_last_v_pos)-wrap_offset)))
+ /* XXX last comparison might need to be >= */
+*** ../readline-6.0/patchlevel 2008-11-18 11:01:14.000000000 -0500
+--- patchlevel 2009-05-09 12:01:06.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 2
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 3
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org