On Thursday 02 September 2010, Peter Rosin wrote:
> It is actually a bug in ar-lib. When you issue
>       .../ar-lib lib x foo.lib
> it runs this loop:
> 
>     $AR -NOLOGO -LIST "$archive" | while read member
>     do
>       $AR -NOLOGO -EXTRACT:"$member" "$archive" || exit $?
>     done
> 
> (with archive=foo.lib)
> 
> and that reads members from the archive but breaks if there's a
> backslash in one of the members. This works much better:
> 
>     $AR -NOLOGO -LIST "$archive" | sed -e 's/\\/\\\\/g' | while read member; 
> do
>       $AR -NOLOGO -EXTRACT:"$member" "$archive" || exit $?
>     done
Given that Solaris 10 /bin/sh, /usr/xpg4/bin/sh and /bin/ksh do not support
(or fail to honour) the `-r' option of the read builtin (bummer!), your fix
seems the best one to me.  But wait for Ralf's review, as he might know better.

Regards,
  Stefano


Reply via email to