2010-11-05 20 views
0

有没有办法在PDF::Reuse中抑制警告&错误信息? (我不需要警告......如果脚本的这部分对于任何特定的PDF失败,那么它的确定)。 我试过以下,但它似乎并没有工作:如何禁止Perl的PDF :: Reuse发出警告?

eval { 
local $SIG{ALRM} = sub {die "alarm\n"}; 
alarm 10; 

    { 
    local $SIG{__WARN__}=sub{}; 
    use PDF::Reuse;      
    prFile($copyPdf); 
    prDoc( $file) ; 
    prEnd() or next; 
    } 

alarm 0; 
}; 

if ([email protected]) { 
die unless [email protected] eq "alarm\n"; 
print "timed out\n"; 
} 
+0

你的'if'子句没有任何意义 - '$ @'永远不可能同时是真的和假的。 – Ether 2010-11-05 01:02:42

+0

@Ether:在Perl中,永远不要说永远。抛开ACME类型的操作,我*已*看到一些相当不可思议的令人讨厌的事情发生在异常处理程序中,从你的下面重写'$ @'。但我也毫不怀疑你对这个案子是完全正确的。 – tchrist 2010-11-05 01:38:59

+0

@tchrist:是的,我们通常使用Try :: Tiny来避免担心“$ @被定义但不是真实”和“$ @只是改变了,哦,不!的问题。 :) – Ether 2010-11-05 14:47:29

回答

0

你看到了什么警告?

我尝试了上面的PDF脚本,我躺在那里,没有得到任何错误或警告。 perl 5.8.8,PDF ::重用0.35。

问题是您的某个PDF格式不正确吗?