Mercurial > repos > blastem
comparison io.c @ 796:41f73c76b978
Fix some memory issues
author | =?UTF-8?q?Higor=20Eur=C3=ADpedes?= <heuripedes@gmail.com> |
---|---|
date | Sun, 26 Jul 2015 11:00:25 -0700 |
parents | 0565b2c1a034 |
children | 9f149f0e98b7 |
comparison
equal
deleted
inserted
replaced
795:bce97fc0bb8a | 796:41f73c76b978 |
---|---|
338 } | 338 } |
339 | 339 |
340 int parse_binding_target(char * target, tern_node * padbuttons, int * ui_out, int * padnum_out, int * padbutton_out) | 340 int parse_binding_target(char * target, tern_node * padbuttons, int * ui_out, int * padnum_out, int * padbutton_out) |
341 { | 341 { |
342 int gpadslen = strlen("gamepads."); | 342 int gpadslen = strlen("gamepads."); |
343 if (!memcmp(target, "gamepads.", gpadslen)) { | 343 if (!strncmp(target, "gamepads.", gpadslen)) { |
344 if (target[gpadslen] >= '1' && target[gpadslen] <= '8') { | 344 if (target[gpadslen] >= '1' && target[gpadslen] <= '8') { |
345 int padnum = target[gpadslen] - '0'; | 345 int padnum = target[gpadslen] - '0'; |
346 int button = tern_find_int(padbuttons, target + gpadslen + 1, 0); | 346 int button = tern_find_int(padbuttons, target + gpadslen + 1, 0); |
347 if (button) { | 347 if (button) { |
348 *padnum_out = padnum; | 348 *padnum_out = padnum; |
356 } | 356 } |
357 } | 357 } |
358 } else { | 358 } else { |
359 fprintf(stderr, "Gamepad mapping string '%s' refers to an invalid gamepad number %c\n", target, target[gpadslen]); | 359 fprintf(stderr, "Gamepad mapping string '%s' refers to an invalid gamepad number %c\n", target, target[gpadslen]); |
360 } | 360 } |
361 } else if(!memcmp(target, "ui.", strlen("ui."))) { | 361 } else if(!strncmp(target, "ui.", strlen("ui."))) { |
362 *padbutton_out = 0; | 362 *padbutton_out = 0; |
363 if (!strcmp(target + 3, "vdp_debug_mode")) { | 363 if (!strcmp(target + 3, "vdp_debug_mode")) { |
364 *ui_out = UI_DEBUG_MODE_INC; | 364 *ui_out = UI_DEBUG_MODE_INC; |
365 } else if(!strcmp(target + 3, "vdp_debug_pal")) { | 365 } else if(!strcmp(target + 3, "vdp_debug_pal")) { |
366 *ui_out = UI_DEBUG_PAL_INC; | 366 *ui_out = UI_DEBUG_PAL_INC; |
367 } else if(!strcmp(target + 3, "enter_debugger")) { | 367 } else if(!strcmp(target + 3, "enter_debugger")) { |
368 *ui_out = UI_ENTER_DEBUGGER; | 368 *ui_out = UI_ENTER_DEBUGGER; |
369 } else if(!strcmp(target + 3, "save_state")) { | 369 } else if(!strcmp(target + 3, "save_state")) { |
370 *ui_out = UI_SAVE_STATE; | 370 *ui_out = UI_SAVE_STATE; |
371 } else if(!memcmp(target + 3, "set_speed.", strlen("set_speed."))) { | 371 } else if(!strncmp(target + 3, "set_speed.", strlen("set_speed."))) { |
372 *ui_out = UI_SET_SPEED; | 372 *ui_out = UI_SET_SPEED; |
373 *padbutton_out = atoi(target + 3 + strlen("set_speed.")); | 373 *padbutton_out = atoi(target + 3 + strlen("set_speed.")); |
374 } else if(!strcmp(target + 3, "next_speed")) { | 374 } else if(!strcmp(target + 3, "next_speed")) { |
375 *ui_out = UI_NEXT_SPEED; | 375 *ui_out = UI_NEXT_SPEED; |
376 } else if(!strcmp(target + 3, "prev_speed")) { | 376 } else if(!strcmp(target + 3, "prev_speed")) { |