summaryrefslogtreecommitdiff
path: root/games-util/umodpack/files/umodpack-fixes.patch
diff options
context:
space:
mode:
Diffstat (limited to 'games-util/umodpack/files/umodpack-fixes.patch')
-rw-r--r--games-util/umodpack/files/umodpack-fixes.patch138
1 files changed, 138 insertions, 0 deletions
diff --git a/games-util/umodpack/files/umodpack-fixes.patch b/games-util/umodpack/files/umodpack-fixes.patch
new file mode 100644
index 000000000000..13bcad6c9ea9
--- /dev/null
+++ b/games-util/umodpack/files/umodpack-fixes.patch
@@ -0,0 +1,138 @@
+diff -Naur a/Config-Ini-1.06/test.pl b/Config-Ini-1.06/test.pl
+--- a/Config-Ini-1.06/test.pl 2020-04-05 21:08:14.033277147 +0100
++++ b/Config-Ini-1.06/test.pl 2020-04-05 21:08:04.576074986 +0100
+@@ -11,9 +11,9 @@
+
+ ######################### End of black magic.
+
+-use POSIX qw(tmpnam);
+-do { $tmpfile = tmpnam() } until open TMPFILE, ">$tmpfile";
+-print TMPFILE <<EOT;
++use File::Temp qw(tempfile);
++( $tmpfh, $tmpfile ) = tempfile(UNLINK => 0);
++print $tmpfh <<EOT;
+ [Setup]
+ MasterProduct=UnrealTournament
+ Group=UnrealTournament
+@@ -56,7 +56,7 @@
+ ServerActors = IpServer.UdpServerUplinkMaster\\
+ ServerAddress=master.mplayer.com MasterServerPort = 27900
+ EOT
+-close TMPFILE;
++close $tmpfh;
+
+ # constructor
+ $ini = new Config::Ini($tmpfile);
+@@ -165,11 +165,11 @@
+
+ # save function
+ $ini->save;
+-open TMPFILE, "<$tmpfile";
++open $tmpfh, "<$tmpfile";
+ undef $/;
+-$wholefile = <TMPFILE>;
++$wholefile = <$tmpfh>;
+ $/ = "\n";
+-close TMPFILE;
++close $tmpfh;
+ $shouldbe = <<EOT;
+ [Setup]
+ MasterProduct=UnrealTournament
+@@ -232,7 +232,7 @@
+ print "ok 17\n";
+ } else { print "not ok 17\n"; }
+
+-do { $tmpfile = tmpnam() } until open TMPFILE, ">$tmpfile";
++( $tmpfh, $tmpfile ) = tempfile(UNLINK => 0);
+ $ini->save($tmpfile);
+
+ # test decoder
+@@ -254,8 +254,8 @@
+ unlink $tmpfile;
+
+ # test comment delimiter
+-do { $tmpfile = tmpnam() } until open TMPFILE, ">$tmpfile";
+-print TMPFILE <<EOT;
++( $tmpfh, $tmpfile ) = tempfile(UNLINK => 0);
++print $tmpfh <<EOT;
+ [Options]
+ Configured=1
+ GSversion=550
+@@ -272,7 +272,7 @@
+ [DEQData]
+ Winlist=t123;218 praivi;215 ptsk;209
+ EOT
+-close TMPFILE;
++close $tmpfh;
+ undef $ini;
+ $ini = new Config::Ini($tmpfile, -commentdelim => '#');
+
+diff -Naur a/Makefile.PL b/Makefile.PL
+--- a/Makefile.PL 2001-01-18 16:20:37.000000000 +0000
++++ b/Makefile.PL 2020-04-05 21:08:32.335668386 +0100
+@@ -11,7 +11,6 @@
+ 'PREREQ_PM' => {
+ 'Config::Ini' => 1.06,
+ 'Archive::Zip' => 0.07,
+- 'Tk' => 800.020,
+ },
+- 'EXE_FILES' => [qw(umod xumod)],
++ 'EXE_FILES' => [qw(umod)],
+ );
+diff -Naur a/umod b/umod
+--- a/umod 2020-04-05 21:08:14.033277147 +0100
++++ b/umod 2020-04-05 21:08:04.576074986 +0100
+@@ -17,7 +17,8 @@
+ use FileHandle;
+ use File::Find;
+ use Getopt::Long;
+-use POSIX qw(tmpnam SEEK_END);
++use POSIX qw(SEEK_END);
++use File::Temp qw(tempfile);
+ use strict;
+
+ =pod
+@@ -520,7 +521,7 @@
+ if( $filename =~ /\.zip$/i ) {
+
+ my( $tmpFile, $fh );
+- do { $tmpFile = tmpnam(); } until $fh = new FileHandle( $tmpFile, 'w' );
++ ( $fh, $tmpFile ) = tempfile(UNLINK => 0);
+
+ my( $zipFile ) = new Archive::Zip;
+ if( $zipFile->read( $filename ) != AZ_OK ) {
+diff -Naur a/Umod.pm b/Umod.pm
+--- a/Umod.pm 2020-04-05 21:08:14.033277147 +0100
++++ b/Umod.pm 2020-04-05 21:08:04.576074986 +0100
+@@ -400,22 +400,22 @@
+ if( $ini->exists( ['Setup', 'Requires'] ) ) {
+ foreach my $requirement ( $ini->get( ['Setup', 'Requires'],
+ -mapping => 'multiple' ) ) {
+- my( %hash );
+- %hash->{product} = $ini->get( [$requirement, 'Product'],
++ my( $hash );
++ $hash->{product} = $ini->get( [$requirement, 'Product'],
+ -mapping => 'single' );
+- %hash->{version} = $ini->get( [$requirement, 'Version'],
++ $hash->{version} = $ini->get( [$requirement, 'Version'],
+ -mapping => 'single' );
+- %hash->{localproduct} = $ini->get( [$requirement, 'LocalProduct'],
++ $hash->{localproduct} = $ini->get( [$requirement, 'LocalProduct'],
+ -mapping => 'single' );
+- %hash->{producturl} = $ini->get( [$requirement, 'ProductURL'],
++ $hash->{producturl} = $ini->get( [$requirement, 'ProductURL'],
+ -mapping => 'single' );
+- %hash->{versionurl} = $ini->get( [$requirement, 'VersionURL'],
++ $hash->{versionurl} = $ini->get( [$requirement, 'VersionURL'],
+ -mapping => 'single' );
+- %hash->{developer} = $ini->get( [$requirement, 'Developer'],
++ $hash->{developer} = $ini->get( [$requirement, 'Developer'],
+ -mapping => 'single' );
+- %hash->{developerurl} = $ini->get( [$requirement, 'DeveloperURL'],
++ $hash->{developerurl} = $ini->get( [$requirement, 'DeveloperURL'],
+ -mapping => 'single' );
+- push( @requirements, \%hash );
++ push( @requirements, \$hash );
+ }
+ }
+