Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • Isn't the issue simply this line

    (($c < 200) and ($@||'')=~ m/^Resource temporarily/) and redo;

    in IPC::Run::IO? It's string-matching against $!, which is pretty stupid. Is 'Ulazno/izlazna greáka' simply (mangled) Croatian for EAGAIN?

    • It is more pervasive than just the single spot.

      Adding || $@ =~ /^Ulazno\/izlazna gre/ at line 2404 of Run.pm causes the error to go away.

      I think using $! in numeric context gives access to the errno value which would be portable between locales but you may need some help from IO::Pty in order to get access to that.

      • Unfortunately you can't rely on $! still having the right value by the time the exception is caught. Really all those croaks in _read &c. should be throwing proper exception objects which catch the (numeric) value of $!. I would want to switch the whole thing to use autodie, but that's quite a major change.