develooper Front page | perl.macosx | Postings from February 2009

Re: Sudden death of PDF::API2

Thread Previous | Thread Next
From:
Alan Fry
Date:
February 16, 2009 01:54
Subject:
Re: Sudden death of PDF::API2
Message ID:
81C89542-47B1-462F-BCDB-EDF0328E952C@afco.demon.co.uk

On 15 Feb 2009, at 13:01, Landry Le Chevanton wrote:

> I did also had problems with perl scripts after installing the  
> security
> patch. Strategy for fixing has been worked out and reported here:
>
> http://bulknews.typepad.com/blog/2009/02/mac-os-x-security-update-2009001-br
> eaks-perl-cpan.html
>
> As well as in Apple forum
> http://discussions.apple.com/thread.jspa?threadID=1905157&tstart=0

Thank you very much for these links, which confirmed it was the  
security patch which was the cause of the problem and gave a good  
start on how to go about fixing the matter.

> This recipe worked for me so far.

I reinstalled IO-1.2301 and Compress-Zlib but this did not restore  
functionality to PDF::API2.

Running one of the 'example scripts' provided in the documentation for  
Zlib.pm resulted in an error involving 'dualval' which turned out to  
be a subroutine in Scalar::Utils which is 'use'd by Zlib.pm.  
Reinstalling Scalar-List-Utils-1.19 fixed that problem and also  
(thankfully) restored PDF::API2.
>


I am not sure what happened to Scalar::Utils when the security patch  
was applied but I have a suspicion it might have been deleted?

Whilst these measures have fixed my immediate problems with Perl I  
fear we may yet see some more bugs  emerging from the  woodwork as  
time goes on.

I am most grateful for your help,

Kind regards,

Alan

> Landry
>
>
> Le 15/02/09 12:10, « Alan Fry » <ajf@afco.demon.co.uk> a écrit :
>
>> I have an Intel MacPro running Mac OS X 10.5.6 (Perl 5.8.8) and a  
>> copy
>> of PDF::API2. This has worked flawlessly for a long time.
>>
>> Suddenly it has failed. There have been no changes at all to the
>> machine apart from a recent 'Security Update', which I think had to  
>> do
>> mostly with a loophole in Safari.
>>
>> This minimal script:
>>
>> my $pdf_in = PDF::API2->open($file_in) or die "$!\n";
>> my $pdf_out = PDF::API2->new or die "$!\n";
>>
>> $page = $pdf_out->page;
>> $page->mediabox(595, 842);
>> $gfx = $page->gfx;
>> #$xo = $pdf_out->importPageIntoForm($pdf_in, 1);
>> #$gfx->formimage($xo, 0, 0, 1);
>>
>> fails with the error message:
>>
>> Undefined subroutine &Compress::Zlib::compress called at /Library/ 
>> Perl/
>> 5.8.8/PDF/API2/Content.pm line 103.
>>
>> However the folder 'Compress' is there, (alongside the folder
>> 'PDF"which contains the module), the file 'Zlib' in that folder, and
>> Zlib has a subroutine named 'compress'. So what can possibly have  
>> gone
>> wrong here?
>>
>> If the last two lines above are uncommented, the error message  
>> becomes:
>>
>> Can't call method "infilt" on an undefined value at /Library/Perl/
>> 5.8.8/PDF/API2/Util.pm line 667.
>>
>> presumably as a result of failure to access Zlib subroutines?
>>
>> I have run 'repair permissions' which has not altered the situation
>> and run out of ideas of what to do next.
>>
>> I would be most grateful if anyone could help.
>>
>> Alan Fry
>
>
>


Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About