139 lines
4.7 KiB
Plaintext
139 lines
4.7 KiB
Plaintext
BASH PATCH REPORT
|
|
=================
|
|
|
|
Bash-Release: 3.2
|
|
Patch-ID: bash32-011
|
|
|
|
Bug-Reported-by: Petr Sumbera <Petr.Sumbera@Sun.COM>
|
|
Bug-Reference-ID: <45AF5F4B.1020800@sun.com>
|
|
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-01/msg00049.html
|
|
|
|
Bug-Description:
|
|
|
|
Under certain circumstances (loopback mounts), the bash getcwd does not
|
|
return correct results. This patch allows the use of the Solaris libc
|
|
getcwd even though it doesn't dynamically allocate memory.
|
|
|
|
Run `touch configure' to make sure make doesn't try to run autoconf.
|
|
Then run configure with whatever options you like.
|
|
|
|
Patch:
|
|
|
|
*** ../bash-3.2-patched/configure.in Tue Sep 26 11:05:45 2006
|
|
--- configure.in Wed Jan 31 09:48:00 2007
|
|
***************
|
|
*** 6,10 ****
|
|
dnl Process this file with autoconf to produce a configure script.
|
|
|
|
! # Copyright (C) 1987-2006 Free Software Foundation, Inc.
|
|
|
|
# This program is free software; you can redistribute it and/or modify
|
|
--- 6,10 ----
|
|
dnl Process this file with autoconf to produce a configure script.
|
|
|
|
! # Copyright (C) 1987-2007 Free Software Foundation, Inc.
|
|
|
|
# This program is free software; you can redistribute it and/or modify
|
|
***************
|
|
*** 992,996 ****
|
|
sco3.2*) LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;;
|
|
sunos4*) LOCAL_CFLAGS=-DSunOS4 ;;
|
|
! solaris2.5*) LOCAL_CFLAGS=-DSunOS5 ;;
|
|
lynxos*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
|
|
linux*) LOCAL_LDFLAGS=-rdynamic # allow dynamic loading
|
|
--- 992,997 ----
|
|
sco3.2*) LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;;
|
|
sunos4*) LOCAL_CFLAGS=-DSunOS4 ;;
|
|
! solaris2.5*) LOCAL_CFLAGS="-DSunOS5 -DSOLARIS" ;;
|
|
! solaris2*) LOCAL_CFLAGS=-DSOLARIS ;;
|
|
lynxos*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
|
|
linux*) LOCAL_LDFLAGS=-rdynamic # allow dynamic loading
|
|
*** ../bash-3.2-patched/config-bot.h Tue Sep 12 16:43:04 2006
|
|
--- config-bot.h Tue Mar 6 10:41:31 2007
|
|
***************
|
|
*** 2,6 ****
|
|
/* modify settings or make new ones based on what autoconf tells us. */
|
|
|
|
! /* Copyright (C) 1989-2002 Free Software Foundation, Inc.
|
|
|
|
This file is part of GNU Bash, the Bourne Again SHell.
|
|
--- 2,6 ----
|
|
/* modify settings or make new ones based on what autoconf tells us. */
|
|
|
|
! /* Copyright (C) 1989-2007 Free Software Foundation, Inc.
|
|
|
|
This file is part of GNU Bash, the Bourne Again SHell.
|
|
***************
|
|
*** 71,77 ****
|
|
#endif
|
|
|
|
! /* If we have a getcwd(3), but it calls popen(), #undef HAVE_GETCWD so
|
|
! the replacement in getcwd.c will be built. */
|
|
! #if defined (HAVE_GETCWD) && defined (GETCWD_BROKEN)
|
|
# undef HAVE_GETCWD
|
|
#endif
|
|
--- 71,79 ----
|
|
#endif
|
|
|
|
! /* If we have a getcwd(3), but one that does not dynamically allocate memory,
|
|
! #undef HAVE_GETCWD so the replacement in getcwd.c will be built. We do
|
|
! not do this on Solaris, because their implementation of loopback mounts
|
|
! breaks the traditional file system assumptions that getcwd uses. */
|
|
! #if defined (HAVE_GETCWD) && defined (GETCWD_BROKEN) && !defined (SOLARIS)
|
|
# undef HAVE_GETCWD
|
|
#endif
|
|
*** ../bash-3.2-patched/builtins/common.c Thu Jul 27 09:39:51 2006
|
|
--- builtins/common.c Tue Mar 6 10:43:27 2007
|
|
***************
|
|
*** 1,3 ****
|
|
! /* Copyright (C) 1987-2005 Free Software Foundation, Inc.
|
|
|
|
This file is part of GNU Bash, the Bourne Again SHell.
|
|
--- 1,3 ----
|
|
! /* Copyright (C) 1987-2007 Free Software Foundation, Inc.
|
|
|
|
This file is part of GNU Bash, the Bourne Again SHell.
|
|
***************
|
|
*** 476,480 ****
|
|
--- 476,484 ----
|
|
if (the_current_working_directory == 0)
|
|
{
|
|
+ #if defined (GETCWD_BROKEN)
|
|
+ the_current_working_directory = getcwd (0, PATH_MAX);
|
|
+ #else
|
|
the_current_working_directory = getcwd (0, 0);
|
|
+ #endif
|
|
if (the_current_working_directory == 0)
|
|
{
|
|
*** ../bash-3.2-patched/configure Tue Sep 26 11:06:01 2006
|
|
--- configure Tue Mar 6 10:59:20 2007
|
|
***************
|
|
*** 27317,27321 ****
|
|
sco3.2*) LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;;
|
|
sunos4*) LOCAL_CFLAGS=-DSunOS4 ;;
|
|
! solaris2.5*) LOCAL_CFLAGS=-DSunOS5 ;;
|
|
lynxos*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
|
|
linux*) LOCAL_LDFLAGS=-rdynamic # allow dynamic loading
|
|
--- 27317,27322 ----
|
|
sco3.2*) LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;;
|
|
sunos4*) LOCAL_CFLAGS=-DSunOS4 ;;
|
|
! solaris2.5*) LOCAL_CFLAGS="-DSunOS5 -DSOLARIS" ;;
|
|
! solaris2*) LOCAL_CFLAGS=-DSOLARIS ;;
|
|
lynxos*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
|
|
linux*) LOCAL_LDFLAGS=-rdynamic # allow dynamic loading
|
|
*** ../bash-3.2/patchlevel.h Thu Apr 13 08:31:04 2006
|
|
--- patchlevel.h Mon Oct 16 14:22:54 2006
|
|
***************
|
|
*** 26,30 ****
|
|
looks for to find the patch level (for the sccs version string). */
|
|
|
|
! #define PATCHLEVEL 10
|
|
|
|
#endif /* _PATCHLEVEL_H_ */
|
|
--- 26,30 ----
|
|
looks for to find the patch level (for the sccs version string). */
|
|
|
|
! #define PATCHLEVEL 11
|
|
|
|
#endif /* _PATCHLEVEL_H_ */
|