diff options
author | Matej Groma | 2022-05-08 14:47:46 +0200 |
---|---|---|
committer | Matej Groma | 2022-05-08 14:52:37 +0200 |
commit | 64f90aa74a2534444f3e4e8ab68eb9be08077db0 (patch) | |
tree | 3a33a9cfb412cf35048a3c2b96278618a0a1503b | |
parent | b6467ab19c8ebef562ed495d09e996dd5b4db4e8 (diff) | |
download | aur-enigma_sdl.tar.gz |
Upgrade to version 1.30
Also add patch to fix invalid memory access occurring with older compiler
or runtime (not sure about the exact cause).
Signed-off-by: Matej Groma <sbovdvvnir68a8hftegth9whs+arch-aur@matejgroma.com>
-rw-r--r-- | .SRCINFO | 20 | ||||
-rw-r--r-- | PKGBUILD | 24 | ||||
-rw-r--r-- | fix_invalid_access.patch | 13 | ||||
-rw-r--r-- | src_Value.cc.patch | 15 | ||||
-rw-r--r-- | src_client.cc.patch | 12 | ||||
-rw-r--r-- | src_lev_Proxy.cc.patch | 11 |
6 files changed, 33 insertions, 62 deletions
@@ -1,7 +1,7 @@ pkgbase = enigma_sdl pkgdesc = Puzzle game inspired by Oxyd on the Atari ST and Rock'n'Roll on the Amiga. - pkgver = 1.21 - pkgrel = 4 + pkgver = 1.30 + pkgrel = 1 url = http://www.nongnu.org/enigma/ arch = i686 arch = x86_64 @@ -16,14 +16,12 @@ pkgbase = enigma_sdl depends = xdg-utils depends = curl depends = hicolor-icon-theme - source = http://downloads.sourceforge.net/enigma-game/enigma-1.21.tar.gz - source = src_client.cc.patch - source = src_lev_Proxy.cc.patch - source = src_Value.cc.patch - sha256sums = d872cf067d8eb560d3bb1cb17245814bc56ac3953ae1f12e2229c8eb6f82ce01 - sha256sums = 0d4ec33182e481b6856ceb029b1f144b8c31b0902e8f49ceb08093a66fe67304 - sha256sums = b27c2f114bbf76a3a0f7032380db885bdb3983e2a2a4648aed520c1b066e5aad - sha256sums = 4899aa6f7f965deb441840400b42d6fda65ea6e44c7fb131521db9a4e6fb4f2f + depends = sdl2_ttf + depends = sdl2_mixer + depends = sdl2_image + source = https://github.com/Enigma-Game/Enigma/releases/download/1.30/Enigma-1.30-src.tar.gz + source = fix_invalid_access.patch + sha256sums = ae64b91fbc2b10970071d0d78ed5b4ede9ee3868de2e6e9569546fc58437f8af + sha256sums = 61709cbf9fe420d062fb8b24e56a6165242626f4f211bf798ee90155a0208bb2 pkgname = enigma_sdl - @@ -1,26 +1,24 @@ +# Maintainer: Matej Groma <sbovdvvnir68a8hftegth9whs+arch-aur@matejgroma.com> # Contributor: Nagy Gabor <Gabor.V.Nagy@@gmail.com> pkgname=enigma_sdl -pkgver=1.21 -pkgrel=4 +pkgver=1.30 +pkgrel=1 pkgdesc="Puzzle game inspired by Oxyd on the Atari ST and Rock'n'Roll on the Amiga." url="http://www.nongnu.org/enigma/" -depends=('libpng' 'sdl_image' 'sdl_mixer' 'sdl_ttf' 'xerces-c' 'xdg-utils' 'curl' 'hicolor-icon-theme') +depends=('libpng' 'sdl_image' 'sdl_mixer' 'sdl_ttf' 'xerces-c' 'xdg-utils' 'curl' 'hicolor-icon-theme' + 'sdl2_ttf' 'sdl2_mixer' 'sdl2_image') makedepends=('imagemagick' 'pkgconf') -source=(http://downloads.sourceforge.net/enigma-game/enigma-$pkgver.tar.gz - src_client.cc.patch src_lev_Proxy.cc.patch src_Value.cc.patch) -sha256sums=('d872cf067d8eb560d3bb1cb17245814bc56ac3953ae1f12e2229c8eb6f82ce01' - '0d4ec33182e481b6856ceb029b1f144b8c31b0902e8f49ceb08093a66fe67304' - 'b27c2f114bbf76a3a0f7032380db885bdb3983e2a2a4648aed520c1b066e5aad' - '4899aa6f7f965deb441840400b42d6fda65ea6e44c7fb131521db9a4e6fb4f2f') +source=(https://github.com/Enigma-Game/Enigma/releases/download/$pkgver/Enigma-$pkgver-src.tar.gz + fix_invalid_access.patch) +sha256sums=('ae64b91fbc2b10970071d0d78ed5b4ede9ee3868de2e6e9569546fc58437f8af' + '61709cbf9fe420d062fb8b24e56a6165242626f4f211bf798ee90155a0208bb2') license=('GPL') arch=('i686' 'x86_64') build() { - CXXFLAGS+=" -std=gnu++11 -Wno-deprecated-declarations" + CXXFLAGS+=" -std=gnu++14 -Wno-deprecated-declarations -Wno-format-security" cd $srcdir/enigma-$pkgver - patch -Np1 -i $srcdir/src_client.cc.patch - patch -Np0 -i $srcdir/src_lev_Proxy.cc.patch - patch -Np0 -i $srcdir/src_Value.cc.patch + patch -Np1 -i $srcdir/fix_invalid_access.patch autoconf ./configure --prefix=/usr --program-suffix=_sdl --sysconfdir=/etc --disable-sdltest --enable-optimize make diff --git a/fix_invalid_access.patch b/fix_invalid_access.patch new file mode 100644 index 000000000000..a5b83fc5d208 --- /dev/null +++ b/fix_invalid_access.patch @@ -0,0 +1,13 @@ +--- a/lib-src/zipios++/zipios++/zipheadio.h 2021-06-18 22:04:12.000000000 +0200 ++++ b/lib-src/zipios++/zipios++/zipheadio.h 2022-05-08 13:58:16.936444854 +0200 +@@ -150,7 +150,9 @@ + } + + inline void writeByteSeq ( ostream &os, const vector < unsigned char > &vec ) { +- os.rdbuf()->sputn( reinterpret_cast< const char * >( &( vec[ 0 ] ) ), vec.size() ) ; ++ if ( vec.size () != 0 ) { ++ os.rdbuf()->sputn( reinterpret_cast< const char * >( &( vec[ 0 ] ) ), vec.size() ) ; ++ } + } + + istream& operator>> ( istream &is, ZipLocalEntry &zlh ) ; diff --git a/src_Value.cc.patch b/src_Value.cc.patch deleted file mode 100644 index 885c8f0c78fc..000000000000 --- a/src_Value.cc.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- src/Value.cc.orig 2017-09-03 15:39:37 UTC -+++ src/Value.cc -@@ -146,10 +146,10 @@ namespace enigma { - val.str[0] = 0; - break; - case BOOL : -- val.dval[0] = false; -+ val.dval[0] = 0; - break; - case OBJECT : -- val.dval[0] = (double) NULL; -+ val.dval[0] = 0; - break; - case NAMEDOBJECT: - ASSERT(false, XLevelRuntime, "Value: illegal type usage"); diff --git a/src_client.cc.patch b/src_client.cc.patch deleted file mode 100644 index 48d989470ff9..000000000000 --- a/src_client.cc.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/src/client.cc -+++ b/src/client.cc -@@ -208,8 +208,8 @@ void Client::handle_events() { - case SDL_MOUSEBUTTONUP: on_mousebutton(e); break; - case SDL_ACTIVEEVENT: { - update_mouse_button_state(); -- if (e.active.gain == 0 && !video::IsFullScreen()) -- show_menu(false); -+// if (e.active.gain == 0 && !video::IsFullScreen()) -+// show_menu(false); - break; - } diff --git a/src_lev_Proxy.cc.patch b/src_lev_Proxy.cc.patch deleted file mode 100644 index 4ba1676e9f75..000000000000 --- a/src_lev_Proxy.cc.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- src/lev/Proxy.cc.orig 2017-09-03 15:54:50 UTC -+++ src/lev/Proxy.cc -@@ -933,7 +933,7 @@ namespace enigma { namespace lev { - } else if (haveLocalCopy) { - // plain file - basic_ifstream<char> ifs(absExtPath.c_str(), ios::binary | ios::in); -- if (ifs != NULL) -+ if (ifs) - Readfile(ifs, extCode); - else - haveLocalCopy = false; |