Package: supertransball2
Version: 1.5-2
Severity: normal
Tags: patch

Hi,

when you try to change level pack, game crashed cause by a lack of
checking values in state_mainmenu.cpp at line 69 (state_mainmenu_cyle
function), a variable "image" is get from a file (bad assumption about
relative path, without any check) makes passing NULL pointer next. So
it's better tochange directory to the one expected in game.cpp, a right
'chdir' makes everything better.

The attached patch fix it.

Regards.

-- System Information:
Debian Release: testing/unstable
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/dash
Kernel: Linux 2.6.11-mh
Locale: [EMAIL PROTECTED], [EMAIL PROTECTED] (charmap=ISO-8859-15)
(ignored: LC_ALL set to [EMAIL PROTECTED])

Versions of packages supertransball2 depends on:
ii  libc6         2.3.5-6                    GNU C Library: Shared
libraries an
ii  libgcc1       1:4.0.2-2                  GCC support library
ii  libsdl-image1 1.2.4-1                    image loading library for
Simple D
ii  libsdl-mixer1 1.2.6-1.1                  mixer library for Simple
DirectMed
ii  libsdl-sge    020904-5                   extension of graphic
functions for
ii  libsdl-sound1 1.0.1-5                    Decoder of several sound
file form
ii  libsdl1.2debi 1.2.7+1.2.8cvs20041007-5.3 Simple DirectMedia Layer
hi  libstdc++5    1:3.3.6-7                  The GNU Standard C++ Library v3
ii  supertransbal 1.5-2                      Data files for a thrust
type of ga

supertransball2 recommends no packages.

-- no debconf information


#! /bin/sh /usr/share/dpatch/dpatch-run
## 04_changelevelpack_fixup JusTiCe8 <[EMAIL PROTECTED]>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: patch "UNIX paths fixup" use bad config file checks and makes it to be
## DP: always recreated with default values.

@DPATCH@

--- supertransball2-1.5.orig/sources/game.cpp
+++ supertransball2-1.5/sources/game.cpp
@@ -173,6 +173,8 @@
 
        if (NLEVELS==-1) return false;
 
+       chdir(datadir);
+
        switch(STATE) {
        case 0: if (!state_logo_cycle(screen,sx,sy,keyboard)) return false;
                        break;

Reply via email to