[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: X 3.3-6



On Fri, 3 Oct 1997, joost witteveen wrote:

> > 
> > The problems are easy to summarize:
> > - xlib6 version 3.3-6 has a bug in it that causes a lot of programs not to
> >   find files under /usr/X11R6/lib/X11/ . xlib6 version 3.3-5 doesn't have
> >   this bug.
> > - the rest of the packages don't seem to have any bugs that break other
> >   things (of course they do have bugs).
> 
> Not completely true. fvwm2 (at least) has a "-rpath" bug, that makes
> it always search it's X libraries in /usr/X11R6/lib/. This causes
> it to segfault when you install xlibc6 3.3-5 or higher.

Oops. Very true indeed. There is a script, however, which can patch any
binary that has this bug.

--- cut here ---
#!/usr/bin/perl -w

# Open file
open IN, "$ARGV[0]" or die "can't find $ARGV[0]: $!";

# Read it in one slurp
select IN;
undef $/;
select STDOUT;
$file=<IN>;
close IN;

# Remove this string
$count=$file=~s!/usr/X11R6/lib\0!\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0!g;
print "Replaced: $count occurences in $ARGV[0]\n";

# Write the file
open OUT, ">$ARGV[0].out" or die "can't write $ARGV[0].out: $!";
print OUT $file;
close OUT;
--- cut here ---

This produces a copy of every file with '.out' appended to the file name. 
The script should say it has replaced 1 occurence for each file that has
this bug. You can `mv' the .out files to the original names [1], `chmod
+x' them and you're ready to go.

Note that in the case of fvwm(2|95), you also have to patch all the
modules that are in /usr/X11R6/lib/X11/fvwm(2|95). I am not sure about the
exact directory names (I have only fvwm2), but you get the idea.

Remco

[1] I mostly use quite long command lines to do this for all files at
once, for example in the fvwm-modules directory:

# for i in Fvwm* ; do xlibsbug $i ; mv $i $i.bug ; mv $i.out $i ; chmod -x $i.bug ; chmod +x $i ; done

Of course you can also just `rm' the .bug files but I like to play it safe
first. 

-- 
"Very funny, Scotty. Now beam up my clothes."


--
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-user-request@lists.debian.org . 
Trouble?  e-mail to templin@bucknell.edu .


Reply to: