From: John L. Allen Date: Fri, 5 Sep 1997 00:00:00 +0000 (+0000) Subject: Banishing eval from getopt.pl and Getopt/Std.pm X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=29d4204f776e15312c0c98f12e65eab4d319cddc;p=p5sagit%2Fp5-mst-13.2.git Banishing eval from getopt.pl and Getopt/Std.pm This is a minimal patch *adding no new features*. I submitted a prior patch that reworded the pods and allowed -- to terminate args, among other things, but it never made it in. Perhaps this will. p5p-msgid: Pine.SOL.3.91.970920154720.3683A@gateway --- diff --git a/lib/Getopt/Std.pm b/lib/Getopt/Std.pm index fee0d33..2788293 100644 --- a/lib/Getopt/Std.pm +++ b/lib/Getopt/Std.pm @@ -67,7 +67,7 @@ sub getopt ($;$) { $$hash{$first} = $rest; } else { - eval "\$opt_$first = \$rest;"; + ${"opt_$first"} = $rest; push( @EXPORT, "\$opt_$first" ); } } @@ -76,7 +76,7 @@ sub getopt ($;$) { $$hash{$first} = 1; } else { - eval "\$opt_$first = 1;"; + ${"opt_$first"} = 1; push( @EXPORT, "\$opt_$first" ); } if ($rest ne '') { @@ -116,7 +116,7 @@ sub getopts ($;$) { $$hash{$first} = $rest; } else { - eval "\$opt_$first = \$rest;"; + ${"opt_$first"} = $rest; push( @EXPORT, "\$opt_$first" ); } } @@ -125,7 +125,7 @@ sub getopts ($;$) { $$hash{$first} = 1; } else { - eval "\$opt_$first = 1"; + ${"opt_$first"} = 1; push( @EXPORT, "\$opt_$first" ); } if($rest eq '') { diff --git a/lib/getopt.pl b/lib/getopt.pl index a6023c8..f871e41 100644 --- a/lib/getopt.pl +++ b/lib/getopt.pl @@ -24,10 +24,10 @@ sub Getopt { shift(@ARGV); $rest = shift(@ARGV); } - eval "\$opt_$first = \$rest;"; + ${"opt_$first"} = $rest; } else { - eval "\$opt_$first = 1;"; + ${"opt_$first"} = 1; if ($rest ne '') { $ARGV[0] = "-$rest"; }