static int protection_warned = 0;
for (i = 0; i < 16; i++) {
- sprintf(buf, "%s%d", USBDEV, i);
+ snprintf(buf, sizeof(buf), "%s%d", USBDEV, i);
f = open(buf, O_RDONLY);
if (f >= 0) {
cp = fghJoystickWalkUSBdev(f, name, out, outlen);
return 0;
/* Open .. MediaResources\CurrentJoystickSettings */
- sprintf ( buffer, "%s\\%s\\%s",
- REGSTR_PATH_JOYCONFIG, joy->jsCaps.szRegKey,
- REGSTR_KEY_JOYCURR );
+ _snprintf ( buffer, sizeof(buffer), "%s\\%s\\%s",
+ REGSTR_PATH_JOYCONFIG, joy->jsCaps.szRegKey,
+ REGSTR_KEY_JOYCURR );
lr = RegOpenKeyEx ( HKEY_LOCAL_MACHINE, buffer, 0, KEY_QUERY_VALUE, &hKey);
dwcb = sizeof(OEMKey);
/* JOYSTICKID1-16 is zero-based; registry entries for VJOYD are 1-based. */
- sprintf ( buffer, "Joystick%d%s", joy->js_id + 1, REGSTR_VAL_JOYOEMNAME );
+ _snprintf ( buffer, sizeof(buffer), "Joystick%d%s", joy->js_id + 1, REGSTR_VAL_JOYOEMNAME );
lr = RegQueryValueEx ( hKey, buffer, 0, 0, (LPBYTE) OEMKey, &dwcb);
RegCloseKey ( hKey );
if ( lr != ERROR_SUCCESS ) return 0;
/* Open OEM Key from ...MediaProperties */
- sprintf ( buffer, "%s\\%s", REGSTR_PATH_JOYOEM, OEMKey );
+ _snprintf ( buffer, sizeof(buffer), "%s\\%s", REGSTR_PATH_JOYOEM, OEMKey );
lr = RegOpenKeyEx ( HKEY_LOCAL_MACHINE, buffer, 0, KEY_QUERY_VALUE, &hKey );
static void fghJoystickOpen( SFG_Joystick* joy )
{
- int i;
+ int i = 0;
#if TARGET_HOST_MACINTOSH
OSStatus err;
#endif
# ifdef JS_NEW
unsigned char u;
# else
-# if defined( __linux__ )
- int counter;
+# if defined( __linux__ ) || TARGET_HOST_SOLARIS
+ int counter = 0;
# endif
# endif
#endif
if( joy->error )
return;
- sprintf( joyfname, "%s/.joy%drc", getenv( "HOME" ), joy->id );
+ snprintf( joyfname, sizeof(buffer), "%s/.joy%drc", getenv( "HOME" ), joy->id );
joyfile = fopen( joyfname, "r" );
joy->error =( joyfile == NULL );
# endif
#endif
-#if defined( __linux__ )
+#if defined( __linux__ ) || TARGET_HOST_SOLARIS
/* Default for older Linux systems. */
joy->num_axes = 2;
joy->num_buttons = 32;
#if TARGET_HOST_MACINTOSH
fgJoystick[ ident ]->id = ident;
- sprintf( fgJoystick[ ident ]->fname, "/dev/js%d", ident ); /* FIXME */
+ snprintf( fgJoystick[ ident ]->fname, sizeof(fgJoystick[ ident ]->fname), "/dev/js%d", ident ); /* FIXME */
fgJoystick[ ident ]->error = GL_FALSE;
#endif
if( ident < USB_IDENT_OFFSET )
fgJoystick[ ident ]->os->is_analog = 1;
if( fgJoystick[ ident ]->os->is_analog )
- sprintf( fgJoystick[ ident ]->os->fname, "%s%d", AJSDEV, ident );
+ snprintf( fgJoystick[ ident ]->os->fname, sizeof(fgJoystick[ ident ]->os->fname), "%s%d", AJSDEV, ident );
else
- sprintf( fgJoystick[ ident ]->os->fname, "%s%d", UHIDDEV,
+ snprintf( fgJoystick[ ident ]->os->fname, sizeof(fgJoystick[ ident ]->os->fname), "%s%d", UHIDDEV,
ident - USB_IDENT_OFFSET );
# elif defined( __linux__ )
fgJoystick[ ident ]->id = ident;
fgJoystick[ ident ]->error = GL_FALSE;
- sprintf( fgJoystick[ident]->fname, "/dev/input/js%d", ident );
+ snprintf( fgJoystick[ident]->fname, sizeof(fgJoystick[ident]->fname), "/dev/input/js%d", ident );
if( access( fgJoystick[ ident ]->fname, F_OK ) != 0 )
- sprintf( fgJoystick[ ident ]->fname, "/dev/js%d", ident );
+ snprintf( fgJoystick[ ident ]->fname, sizeof(fgJoystick[ ident ]->fname), "/dev/js%d", ident );
# endif
#endif