From e460305ac9d198b5cebbdbe25b43a9251454d983 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 2 Nov 2020 00:26:50 +0100 Subject: [PATCH] dosbox-x: upgrade 0.83.6 -> 0.83.7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Andreas Müller --- recipes-emulators/dosbox/dosbox-x.bb | 7 ++- ...> 0003-Treat-all-arm-hosts-as-armv7.patch} | 0 ...ts-during-menu-creation-in-some-envi.patch | 49 ------------------- 3 files changed, 3 insertions(+), 53 deletions(-) rename recipes-emulators/dosbox/dosbox-x/{0004-Treat-all-arm-hosts-as-armv7.patch => 0003-Treat-all-arm-hosts-as-armv7.patch} (100%) delete mode 100644 recipes-emulators/dosbox/dosbox-x/0003-menu-Fix-segfaults-during-menu-creation-in-some-envi.patch diff --git a/recipes-emulators/dosbox/dosbox-x.bb b/recipes-emulators/dosbox/dosbox-x.bb index 9eae63c..e911fd8 100644 --- a/recipes-emulators/dosbox/dosbox-x.bb +++ b/recipes-emulators/dosbox/dosbox-x.bb @@ -22,12 +22,11 @@ SRC_URI = " \ git://github.com/joncampbell123/dosbox-x.git \ file://0001-use-pkgconfig-to-find-sdl2.patch \ file://0002-Enable-unaligned-memory-based-on-recipe-s-suggestion.patch \ - file://0003-menu-Fix-segfaults-during-menu-creation-in-some-envi.patch \ - file://0004-Treat-all-arm-hosts-as-armv7.patch \ + file://0003-Treat-all-arm-hosts-as-armv7.patch \ file://dosbox-x.desktop \ " -SRCREV = "0f1435e18d06ac955f26211541a9556bac759ae2" -PV = "0.83.6" +SRCREV = "223701a170c2a37a02bccd153147a4344e4bfa41" +PV = "0.83.7" S = "${WORKDIR}/git" EXTRA_OECONF = " \ diff --git a/recipes-emulators/dosbox/dosbox-x/0004-Treat-all-arm-hosts-as-armv7.patch b/recipes-emulators/dosbox/dosbox-x/0003-Treat-all-arm-hosts-as-armv7.patch similarity index 100% rename from recipes-emulators/dosbox/dosbox-x/0004-Treat-all-arm-hosts-as-armv7.patch rename to recipes-emulators/dosbox/dosbox-x/0003-Treat-all-arm-hosts-as-armv7.patch diff --git a/recipes-emulators/dosbox/dosbox-x/0003-menu-Fix-segfaults-during-menu-creation-in-some-envi.patch b/recipes-emulators/dosbox/dosbox-x/0003-menu-Fix-segfaults-during-menu-creation-in-some-envi.patch deleted file mode 100644 index 182e97b..0000000 --- a/recipes-emulators/dosbox/dosbox-x/0003-menu-Fix-segfaults-during-menu-creation-in-some-envi.patch +++ /dev/null @@ -1,49 +0,0 @@ -From 2379a88528a627c9f67655202eaa021627fc619f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Andreas=20M=C3=BCller?= -Date: Wed, 21 Oct 2020 22:06:50 +0200 -Subject: [PATCH] menu: Fix segfaults during menu-creation in some environments -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Yocto/Openembedded builds of dosbox-x for armv7 (Raspi4/32Bit/GCC10) segfaultet -at startup. Remote debug sessions showed that mainMenu.get_item was called -before separator_get so that vector separators was not yet prepared. - -To get around, ensure separator_get is called before continuing. - -Upstream-Status: Submitted[https://github.com/joncampbell123/dosbox-x/pull/1960] - -Signed-off-by: Andreas Müller ---- - src/gui/menu.cpp | 10 ++++++++-- - 1 file changed, 8 insertions(+), 2 deletions(-) - -diff --git a/src/gui/menu.cpp b/src/gui/menu.cpp -index 30e62239f..1a76a3ce4 100644 ---- a/src/gui/menu.cpp -+++ b/src/gui/menu.cpp -@@ -1272,12 +1272,18 @@ void ConstructSubMenu(DOSBoxMenu::item_handle_t item_id, const char * const * li - * array lookup, this is not very inefficient at all. */ - - if (!strcmp(ref,"--")) { -+ /* separator is allocated on the fly by separator_get and we cannot -+ * rely that parameters are expanded from right to left -+ * -> we must get separator handle first */ -+ DOSBoxMenu::item_handle_t separator_handle = separator_get(DOSBoxMenu::separator_type_id); - mainMenu.displaylist_append( -- mainMenu.get_item(item_id).display_list, separator_get(DOSBoxMenu::separator_type_id)); -+ mainMenu.get_item(item_id).display_list, separator_handle); - } - else if (!strcmp(ref,"||")) { -+ /* dito */ -+ DOSBoxMenu::item_handle_t separator_handle = separator_get(DOSBoxMenu::vseparator_type_id); - mainMenu.displaylist_append( -- mainMenu.get_item(item_id).display_list, separator_get(DOSBoxMenu::vseparator_type_id)); -+ mainMenu.get_item(item_id).display_list, separator_handle); - } - else if (mainMenu.item_exists(ref)) { - mainMenu.displaylist_append( --- -2.26.2 -