Mon Sep 16 16:49:13 2013: Request 88297 was acted upon.
Transaction: Correspondence added by NGLENN
       Queue: PAR-Packer
     Subject: -M crashes pp if option contains backslashes
   Broken in: 1.014
    Severity: (no value)
       Owner: RSCHUPP
  Requestors: ngl...@cpan.org
      Status: open
 Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=88297 >


> Maybe we could check whether -M was given an absolute pathname
> and at least print a warning.

This seems to do the trick:
--- lib/PAR/PackerOLD.pm        2013-09-17 00:33:16.000000000 +0400
+++ lib/PAR/Packer.pm           2013-09-17 00:33:16.000000000 +0400
@@ -675,6 +675,9 @@
     my (@modules, @data, @exclude);
     foreach my $name (@{ $opt->{M} || [] }) {
+        if(File::Spec->file_name_is_absolute($name)){
+            $self->_warn('Absolute path used in -M option');
+        }
         $self->_name2moddata($name, \@modules, \@data);
     }

I don't know if $self->_warn is a good thing to do here, since it prints the 
line number in Packer.pm, potentially making the user think that there's 
something wrong with the module. Don't know if the message is the best either.

Reply via email to