From: Matthias Kramm Date: Fri, 17 Apr 2009 14:26:23 +0000 (+0200) Subject: integrated xpdf security patches X-Git-Tag: release-0-9-0~2 X-Git-Url: http://git.asbjorn.biz/?p=swftools.git;a=commitdiff_plain;h=aa0dddfad5bcbe7938b8fa365bd914d6d93324d7 integrated xpdf security patches --- diff --git a/lib/pdf/inject-xpdf.pl b/lib/pdf/inject-xpdf.pl index 16b2a77..e3c2f1b 100755 --- a/lib/pdf/inject-xpdf.pl +++ b/lib/pdf/inject-xpdf.pl @@ -4,18 +4,30 @@ $filename = $ARGV[0]; $filename or die "no filename"; -$directory = $filename; -$directory =~ s/.tar.gz$//g; +$basename = $filename; +$basename =~ s/.tar.gz$//g; +$directory = $basename; mkdir("$directory"); mkdir("$directory/tmp/"); chdir("$directory/tmp/") or die; -system("tar -zxvf ../../$filename") and die; + +print "Extracting $filename\n"; +system("tar -zxf ../../$filename") and die; system("find . -type f -exec mv {} .. \\;") and die; chdir(".."); system("find . -type d -exec rmdir {} \\; 2> /dev/null"); +print "Applying security patches...\n"; +for($a=1;$a<10;$a++) { + $patchname = "../${basename}pl$a.patch"; + if(-f $patchname) { + print "*pl$a.patch\n"; + system("patch -s < $patchname") and die; + } +} + $c = 'find . \( -name "*.cc" -or -name "*.h" -or -name "*.c" \) -exec cp {} {}.orig \;'; print "$c\n"; system($c);