diff options
| -rw-r--r-- | abs/extra/snes9x/PKGBUILD | 33 | ||||
| -rw-r--r-- | abs/extra/snes9x/snes9x-fix-crash.patch | 30 | 
2 files changed, 49 insertions, 14 deletions
| diff --git a/abs/extra/snes9x/PKGBUILD b/abs/extra/snes9x/PKGBUILD index 68b8032..a38ac44 100644 --- a/abs/extra/snes9x/PKGBUILD +++ b/abs/extra/snes9x/PKGBUILD @@ -1,37 +1,42 @@ -# $Id: PKGBUILD 78959 2012-10-28 04:11:03Z ebelanger $ +# $Id$  # Maintainer: Eric Bélanger <eric@archlinux.org>  pkgbase=snes9x  pkgname=('snes9x' 'snes9x-gtk')  pkgver=1.53 -pkgrel=5 +pkgrel=8  arch=('i686' 'x86_64')  url="https://code.google.com/p/snes9x-gtk/"  license=('custom') -makedepends=('intltool' 'nasm' 'mesa'  'libpng' 'sdl' 'gtk2' 'libxv' \ -             'desktop-file-utils' ) +makedepends=('intltool' 'nasm' 'mesa' 'libpng' 'sdl' 'gtk2' 'libxv' +             'desktop-file-utils')  source=(http://snes9x-gtk.googlecode.com/files/${pkgbase}-${pkgver}-src.tar.bz2 -        snes9x-gtk2.24.diff.gz) +        snes9x-gtk2.24.diff.gz snes9x-fix-crash.patch)  sha1sums=('57be6480369f66b9aaaeb722789ce114f58ed1e2' -          '680dbe0a70f1821bc7931539e72f5a1a95e3938c') +          '680dbe0a70f1821bc7931539e72f5a1a95e3938c' +          '995495c68ffc00d8266d10a7bd8fc74fb6c147b1') -build() { -  cd "${srcdir}/${pkgbase}-${pkgver}-src" +prepare() { +  cd ${pkgbase}-${pkgver}-src    patch -p1 -i "${srcdir}/snes9x-gtk2.24.diff" -  cd unix +  patch -p1 -i "${srcdir}/snes9x-fix-crash.patch" +} + +build() { +  cd ${pkgbase}-${pkgver}-src/unix    ./configure --prefix=/usr --with-sdd1-decomp --enable-netplay    make -  cd "${srcdir}/${pkgbase}-${pkgver}-src/gtk" +  cd ../gtk    ./configure --prefix=/usr --with-sdd1-decomp --with-netplay --with-opengl    make  }  package_snes9x() {    pkgdesc="A portable Emulator for the Super Nintendo Entertainment System" -  depends=('gcc-libs' 'libpng' 'libxext' 'libsm') +  depends=('libpng' 'libxext' 'libsm') -  cd "${srcdir}/${pkgbase}-${pkgver}-src/unix" +  cd ${pkgbase}-${pkgver}-src/unix    install -D -m755 snes9x "${pkgdir}/usr/bin/snes9x"    install -d "${pkgdir}/usr/share/doc/${pkgname}"    install -D -m644 ../docs/{snes9x.conf.default,{control-inputs,controls,snapshots}.txt} \ @@ -43,10 +48,10 @@ package_snes9x() {  package_snes9x-gtk() {    pkgdesc="A portable Emulator for the Super Nintendo Entertainment System - GTK version"    license=('custom' 'LGPL') -  depends=('sdl' 'libgl' 'libpulse' 'gtk2' 'libxv' 'desktop-file-utils' 'gnome-icon-theme') +  depends=('sdl' 'libpulse' 'gtk2' 'libxv' 'desktop-file-utils' 'gnome-icon-theme')    install=snes9x-gtk.install -  cd "${srcdir}/${pkgbase}-${pkgver}-src/gtk" +  cd ${pkgbase}-${pkgver}-src/gtk    make DESTDIR="${pkgdir}" install    install -d "${pkgdir}/usr/share/doc/${pkgname}"    install -D -m644 ../docs/{snes9x.conf.default,{control-inputs,controls,snapshots}.txt} \ diff --git a/abs/extra/snes9x/snes9x-fix-crash.patch b/abs/extra/snes9x/snes9x-fix-crash.patch new file mode 100644 index 0000000..95ed192 --- /dev/null +++ b/abs/extra/snes9x/snes9x-fix-crash.patch @@ -0,0 +1,30 @@ +From 6d74746342a73cf65db215f4fdecdfb0cae66792 Mon Sep 17 00:00:00 2001 +From: Brandon Wright <bearoso@gmail.com> +Date: Mon, 10 Feb 2014 16:28:05 -0600 +Subject: [PATCH] Fix bug caused by virtual directories. + +--- + gtk/src/gtk_file.cpp | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/gtk/src/gtk_file.cpp b/gtk/src/gtk_file.cpp +index a0df75d..9c0e000 100644 +--- a/gtk/src/gtk_file.cpp ++++ b/gtk/src/gtk_file.cpp +@@ -465,8 +465,11 @@ S9xOpenROMDialog (void) +         filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog)); +         directory = +             gtk_file_chooser_get_current_folder (GTK_FILE_CHOOSER (dialog)); +-        strncpy (gui_config->last_directory, directory, PATH_MAX); +-        g_free (directory); ++        if (directory) ++        { ++            strncpy (gui_config->last_directory, directory, PATH_MAX); ++            g_free (directory); ++        } +     } +  +     else +--  +1.9.3 + | 
