diff options
-rw-r--r-- | Makefile | 6 | ||||
-rw-r--r-- | patches/libpicofe/0003-avoid-button-conflict.patch | 17 |
2 files changed, 21 insertions, 2 deletions
@@ -147,10 +147,12 @@ print-%: all: $(BIN) cores libpicofe/.patched: - cd libpicofe && git apply -p1 < ../patches/libpicofe/0001-key-combos.patch && git apply -p1 < ../patches/libpicofe/0002-small-screen.patch && touch .patched + cd libpicofe && ($(foreach patch, $(sort $(wildcard patches/libpicofe/*.patch)), git apply -p1 < ../$(patch) &&) touch .patched) + +reverse = $(if $(wordlist 2,2,$(1)),$(call reverse,$(wordlist 2,$(words $(1)),$(1))) $(firstword $(1)),$(1)) clean-libpicofe: - test ! -f libpicofe/.patched || (cd libpicofe && git apply -p1 -R < ../patches/libpicofe/0002-small-screen.patch && git apply -p1 -R < ../patches/libpicofe/0001-key-combos.patch && rm .patched) + test ! -f libpicofe/.patched || (cd libpicofe && ($(foreach patch, $(call reverse,$(sort $(wildcard patches/libpicofe/*.patch))), git apply -R -p1 < ../$(patch) &&) rm .patched)) plat_trimui.o: plat_sdl.c plat_funkey.o: plat_sdl.c diff --git a/patches/libpicofe/0003-avoid-button-conflict.patch b/patches/libpicofe/0003-avoid-button-conflict.patch new file mode 100644 index 0000000..c7ff40e --- /dev/null +++ b/patches/libpicofe/0003-avoid-button-conflict.patch @@ -0,0 +1,17 @@ +diff --git a/in_sdl.c b/in_sdl.c +index a84c781..22d3b01 100644 +--- a/in_sdl.c ++++ b/in_sdl.c +@@ -476,10 +476,8 @@ static int in_sdl_menu_translate(void *drv_data, int keycode, char *charcode) + else + { + for (i = 0; i < map_len; i++) { +- if (map[i].key == keycode) { +- ret = map[i].pbtn; +- break; +- } ++ if (map[i].key == keycode) ++ return map[i].pbtn; + } + + if (charcode != NULL && (unsigned int)keycode < SDLK_LAST && |