summaryrefslogtreecommitdiff
path: root/games/rocksndiamonds/patches/patch-ak
blob: 64417d0d553082ccfd8c143ae41c94709c045cce (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$NetBSD: patch-ak,v 1.7 2007/10/13 12:58:48 adam Exp $

--- src/libgame/system.c.orig	2007-09-03 21:27:29.000000000 +0200
+++ src/libgame/system.c
@@ -1457,10 +1457,14 @@ void InitJoysticks()
   return;	/* joysticks generally deactivated by compile-time directive */
 #endif
 
+  /* pkgsrc: InitJoystick will be called more than once, so reset
+   * the state variable 'joystick' only if there's no joystick available (yet)
+   */
   /* always start with reliable default values */
-  joystick.status = JOYSTICK_NOT_AVAILABLE;
-  for (i = 0; i < MAX_PLAYERS; i++)
-    joystick.fd[i] = -1;		/* joystick device closed */
+  if (joystick.status == JOYSTICK_NOT_AVAILABLE) {
+    for (i=0; i<MAX_PLAYERS; i++)
+      joystick.fd[i] = -1;		/* joystick device closed */
+  }
 
 #if defined(TARGET_SDL)
   SDLInitJoysticks();