[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#859983: unblock: freedink/108.4+dfsg-2



Package: release.debian.org
User: release.debian.org@packages.debian.org
Usertags: unblock
Severity: normal

Please unblock package freedink

The upload applies a fix from upstream for a segfault due to an
off-by-one overflow.  The latest rebuild makes the game segfault on
savegame reload, making the game mostly unusable.

Also the upload fixes binNMU support which is currently harmed by a
/usr/share/doc symlink from the "all" meta-package to the "arch" main
package.

diff -Nru freedink-108.4+dfsg/debian/changelog freedink-108.4+dfsg/debian/changelog
--- freedink-108.4+dfsg/debian/changelog       2017-01-22 21:06:51.000000000 +0100
+++ freedink-108.4+dfsg/debian/changelog       2017-04-09 23:10:58.000000000 +0200
@@ -1,3 +1,10 @@
+freedink (108.4+dfsg-2) unstable; urgency=medium
+
+  * Don't symlink /usr/share/doc/freedink to support binNMU
+  * Fix segfault when loading game and exiting editor.
+  
+ -- Sylvain Beucler <beuc@debian.org>  Sun, 09 Apr 2017 23:10:58 +0200
+
 freedink (108.4+dfsg-1) unstable; urgency=medium
 
   * Stub out share/freedink/LiberationSans-Regular.ttf (Closes: #851110)
diff -Nru freedink-108.4+dfsg/debian/freedink.maintscript freedink-108.4+dfsg/debian/freedink.maintscript
--- freedink-108.4+dfsg/debian/freedink.maintscript	  1970-01-01 01:00:00.000000000 +0100
+++ freedink-108.4+dfsg/debian/freedink.maintscript	  2017-04-09 23:10:58.000000000 +0200
@@ -0,0 +1,2 @@
+symlink_to_dir /usr/share/doc/freedink freedink-engine 108.4+dfsg-2~~
+symlink_to_dir /usr/share/doc/freedink-engine-dbg freedink-engine 108.4+dfsg-2~~
diff -Nru freedink-108.4+dfsg/debian/patches/segfault.patch freedink-108.4+dfsg/debian/patches/segfault.patch
--- freedink-108.4+dfsg/debian/patches/segfault.patch	    1970-01-01 01:00:00.000000000 +0100
+++ freedink-108.4+dfsg/debian/patches/segfault.patch	    2017-04-09 23:01:18.000000000 +0200
@@ -0,0 +1,36 @@
+commit 2516bb7c16066d432bf287567f30d533cd067337
+Author: Sylvain Beucler <beuc@beuc.net>
+Date:   Wed Jun 18 23:20:23 2014 +0200
+
+    Don't access callback[MAX_CALLBACKS] (overflow)
+
+diff --git a/src/dinkc.c b/src/dinkc.c
+index 74c1e6d..fdf1f19 100644
+--- a/src/dinkc.c
++++ b/src/dinkc.c
+@@ -64,7 +64,6 @@ struct call_back
+   unsigned long timer;
+ };
+ static struct call_back callback[MAX_CALLBACKS];
+-/* TODO: Used 1->100 in the game, should it be MAX_CALLBACKS+1 ? */
+ 
+ /* DinkC script buffer */
+ static char *rbuf[MAX_SCRIPTS]; //pointers to buffers we may need
+@@ -779,7 +778,7 @@ int add_callback(char name[20], int n1, int n2, int script)
+ 
+ void kill_callback(int cb)
+ {
+-  if (cb >= 0 && cb <= 99)
++  if (cb >= 0 && cb < MAX_CALLBACKS)
+     callback[cb].active = /*false*/0;
+ }
+ 
+@@ -870,7 +869,7 @@ void kill_all_scripts_for_real(void)
+   kill_script(k);
+     }
+   
+-  for (k = 1; k <= MAX_CALLBACKS; k++)
++  for (k = 1; k < MAX_CALLBACKS; k++)
+     {
+       callback[k].active = 0;
+     }
diff -Nru freedink-108.4+dfsg/debian/patches/series freedink-108.4+dfsg/debian/patches/series
--- freedink-108.4+dfsg/debian/patches/series	    1970-01-01 01:00:00.000000000 +0100
+++ freedink-108.4+dfsg/debian/patches/series	    2017-04-09 23:08:56.000000000 +0200
@@ -0,0 +1 @@
+segfault.patch
diff -Nru freedink-108.4+dfsg/debian/rules freedink-108.4+dfsg/debian/rules
--- freedink-108.4+dfsg/debian/rules	   2014-10-17 17:15:09.000000000 +0200
+++ freedink-108.4+dfsg/debian/rules	   2017-04-09 23:10:58.000000000 +0200
@@ -46,9 +46,5 @@
   # Install XPM icon
   cp -a src/freedink_xpm.c debian/freedink-engine/usr/share/pixmaps/freedink.xpm
 
-override_dh_installdocs:
-	# --link-doc requires debhelper 7.4.2
-	dh_installdocs --link-doc=freedink-engine
-
 override_dh_installchangelogs:
	dh_installchangelogs ChangeLog

unblock freedink/108.4+dfsg-2

-- System Information:
Debian Release: 9.0
  APT prefers testing
  APT policy: (500, 'testing'), (50, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.9.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)


Reply to: