--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: freeze-exception
Please unblock package mednafen; the latest version in unstable fixes
a memory leak. I'm attaching the full diff between 0.8.D-1 (the
version currently in testing) and 0.8.D.3-1 (the version in unstable),
I believe it's reasonably short and easy to read; the only changes are
some assembly fixes (for Mac OS X), gcc-4.5 build fixes, the memory
leak, and an added dependency on libjack-dev.
The changelog is as follows:
mednafen (0.8.D.3-1) unstable; urgency=low
* New upstream version, fixing a significant memory leak.
-- Stephen Kitt <steve@sk2.org> Fri, 17 Sep 2010 07:18:16 +0200
mednafen (0.8.D.2-1) unstable; urgency=low
* New upstream version.
* Standards-Version 3.9.1, no change required.
* Add build dependency on libjack-dev.
-- Stephen Kitt <steve@sk2.org> Thu, 05 Aug 2010 08:35:19 +0200
(I uploaded 0.8.D.3-1 to unstable rather than experimental because
0.8.D.2-1 was already in unstable, having been prepared just before
the freeze. I hadn't requested an exception then because the changes
in 0.8.D.1 and 0.8.D.2 don't affect the Debian package, at least not
for Squeeze.)
Regards,
Stephen
unblock mednafen/0.8.D.3-1
-- System Information:
Debian Release: squeeze/sid
APT prefers testing
APT policy: (500, 'testing'), (500, 'stable'), (200, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.35-trunk-686-bigmem (SMP w/2 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
diff --git a/ChangeLog b/ChangeLog
index 2720f6c..90f3510 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+0.8.D.3:
+ Fixed a significant memory leak in the video output code(the leak would increase every time fullscreen is toggled
+ while Mednafen is running).
+
+0.8.D.2:
+ NES: Fixed a crash on certain x86_64 platforms(Mac OS X), due to the sound filtering code dereferencing 32-bit registers instead of 64-bit registers as
+ it should have.
+
+0.8.D.1:
+ Fixed a compilation error on gcc 4.5(thanks to hanno for pointing it out).
+
0.8.D:
SMS: Some state that wasn't being saved in save states now is, which should fix netplay desynch problems with SMS/GG games.
diff --git a/configure b/configure
index 643cd45..b94a128 100755
--- a/configure
+++ b/configure
@@ -4294,7 +4294,7 @@ $as_echo "$ac_cv_safe_to_define___extensions__" >&6; }
-MEDNAFEN_VERSION='0.8.D'
+MEDNAFEN_VERSION='0.8.D.3'
MEDNAFEN_VERSION_NUMERIC=0x00080D
ac_aux_dir=
diff --git a/configure.ac b/configure.ac
index 3153081..9709c6c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2,7 +2,7 @@ AC_INIT([src/mednafen.cpp])
AC_GNU_SOURCE
AC_USE_SYSTEM_EXTENSIONS
-MEDNAFEN_VERSION='0.8.D'
+MEDNAFEN_VERSION='0.8.D.3'
MEDNAFEN_VERSION_NUMERIC=0x00080D
AC_CANONICAL_HOST
diff --git a/debian/changelog b/debian/changelog
index ecf2aea..568597f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,17 @@
+mednafen (0.8.D.3-1) unstable; urgency=low
+
+ * New upstream version, fixing a significant memory leak.
+
+ -- Stephen Kitt <steve@sk2.org> Fri, 17 Sep 2010 07:18:16 +0200
+
+mednafen (0.8.D.2-1) unstable; urgency=low
+
+ * New upstream version.
+ * Standards-Version 3.9.1, no change required.
+ * Add build dependency on libjack-dev.
+
+ -- Stephen Kitt <steve@sk2.org> Thu, 05 Aug 2010 08:35:19 +0200
+
mednafen (0.8.D-1) unstable; urgency=low
* New upstream version.
diff --git a/debian/control b/debian/control
index a88d391..2d84e76 100644
--- a/debian/control
+++ b/debian/control
@@ -3,8 +3,13 @@ Section: games
Priority: optional
Maintainer: Debian Games Team <pkg-games-devel@lists.alioth.debian.org>
Uploaders: Stephen Kitt <steve@sk2.org>
-Build-Depends: debhelper (>= 5), autotools-dev, x11proto-core-dev, libgl1-mesa-dev | libgl-dev, zlib1g-dev | libz-dev, libsdl1.2-dev, libsamplerate0-dev, libsdl-net1.2-dev, libcdio-dev, libsndfile1-dev | libsndfile-dev, libasound2-dev [!kfreebsd-i386 !kfreebsd-amd64 !hurd-i386]
-Standards-Version: 3.8.4
+Build-Depends: debhelper (>= 5), autotools-dev, x11proto-core-dev,
+ libgl1-mesa-dev | libgl-dev, zlib1g-dev | libz-dev, libsdl1.2-dev,
+ libsamplerate0-dev, libsdl-net1.2-dev, libcdio-dev,
+ libsndfile1-dev | libsndfile-dev,
+ libasound2-dev [!kfreebsd-i386 !kfreebsd-amd64 !hurd-i386],
+ libjack-dev
+Standards-Version: 3.9.1
Homepage: http://mednafen.sourceforge.net
Vcs-Git: git://git.debian.org/git/pkg-games/mednafen.git
Vcs-Browser: http://git.debian.org/?p=pkg-games/mednafen.git
diff --git a/src/drivers/video.cpp b/src/drivers/video.cpp
index a6af6bc..a73e6f5 100644
--- a/src/drivers/video.cpp
+++ b/src/drivers/video.cpp
@@ -169,6 +169,12 @@ void KillVideo(void)
HelpSurface = NULL;
}
+ if(NetSurface)
+ {
+ SDL_FreeSurface(NetSurface);
+ NetSurface = NULL;
+ }
+
if(cur_flags & SDL_OPENGL)
KillOpenGL();
diff --git a/src/nes/sound/filter-amd64-mmx.h b/src/nes/sound/filter-amd64-mmx.h
index 56846d8..105846e 100644
--- a/src/nes/sound/filter-amd64-mmx.h
+++ b/src/nes/sound/filter-amd64-mmx.h
@@ -23,20 +23,20 @@
+ (dst[48-63] * src[48-63]);
*/
- "movq (%%edi), %%mm0\n\t"
- "pmaddwd (%%esi), %%mm0\n\t"
+ "movq (%%rdi), %%mm0\n\t"
+ "pmaddwd (%%rsi), %%mm0\n\t"
- "movq 8(%%edi), %%mm2\n\t"
- "pmaddwd 8(%%esi), %%mm2\n\t"
+ "movq 8(%%rdi), %%mm2\n\t"
+ "pmaddwd 8(%%rsi), %%mm2\n\t"
- "movq 16(%%edi), %%mm3\n\t"
- "pmaddwd 16(%%esi), %%mm3\n\t"
+ "movq 16(%%rdi), %%mm3\n\t"
+ "pmaddwd 16(%%rsi), %%mm3\n\t"
- "movq 24(%%edi), %%mm4\n\t"
- "pmaddwd 24(%%esi), %%mm4\n\t"
+ "movq 24(%%rdi), %%mm4\n\t"
+ "pmaddwd 24(%%rsi), %%mm4\n\t"
- "addl $32, %%edi\n\t"
- "addl $32, %%esi\n\t"
+ "add $32, %%rdi\n\t"
+ "add $32, %%rsi\n\t"
"paddd %%mm0, %%mm1\n\t"
"paddd %%mm2, %%mm1\n\t"
"decl %%ecx\n\t"
@@ -44,12 +44,12 @@
"paddd %%mm4, %%mm1\n\t"
"jnz frup_mmx"FILTMMX_SKIP_ADD_STR"\n\t"
- "movd %%mm1, (%%eax)\n\t"
- "subl $512, %%edi\n\t"
- "subl $512, %%esi\n\t"
+ "movd %%mm1, (%%rax)\n\t"
+ "sub $512, %%rdi\n\t"
+ "sub $512, %%rsi\n\t"
- "addl $4, %%eax\n\t"
- "addl %%edx, %%edi\n\t"
+ "add $4, %%rax\n\t"
+ "add %%rdx, %%rdi\n\t"
"decl %%ebp\n\t"
"jnz bigloop_mmx"FILTMMX_SKIP_ADD_STR"\n\t"
@@ -60,13 +60,13 @@
"convmmx"FILTMMX_SKIP_ADD_STR":\n\t"
- "movl (%%eax), %%ebp\n\t"
+ "movl (%%rax), %%ebp\n\t"
"sarl $15, %%ebp\n\t"
#ifndef FILTMMX_SKIP_ADD
"addl $32767, %%ebp\n\t"
#endif
- "movl %%ebp, (%%eax)\n\t"
- "addl $4, %%eax\n\t"
+ "movl %%ebp, (%%rax)\n\t"
+ "add $4, %%rax\n\t"
"decl %%ecx\n\t"
"jnz convmmx"FILTMMX_SKIP_ADD_STR"\n\t"
"pop %%rbp\n\t"
diff --git a/src/pcfx/soundbox.cpp b/src/pcfx/soundbox.cpp
index 12ae1db..0cecbe9 100644
--- a/src/pcfx/soundbox.cpp
+++ b/src/pcfx/soundbox.cpp
@@ -416,7 +416,7 @@ void SoundBox_SetKINGADPCMControl(uint32 value)
int rolloff = (int)((double)0.90 * 21477272 * 2 / 1365 / (1 << SampleFreq) ) / 2;
for(int ch = 0; ch < 2; ch++)
for(int lr = 0; lr < 2; lr++)
- ADPCMSynth[ch][lr].treble_eq(blip_eq_t::blip_eq_t(-1000, rolloff, FSettings.SndRate));
+ ADPCMSynth[ch][lr].treble_eq(blip_eq_t(-1000, rolloff, FSettings.SndRate));
LSampleFreq = SampleFreq;
}
}
--- End Message ---