From 1308dd10e51d122634550dfee3883eca9f7ad3b2 Mon Sep 17 00:00:00 2001 From: Dave Murphy Date: Wed, 23 Oct 2024 09:53:50 +0100 Subject: [PATCH] npdmtool: don't error with missing debug flags, error with multiple set --- configure.ac | 2 +- src/npdmtool.c | 14 +++++--------- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/configure.ac b/configure.ac index 2815c1d..1de75e0 100644 --- a/configure.ac +++ b/configure.ac @@ -2,7 +2,7 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ(2.61) -AC_INIT([switch-tools],[1.13.0],[https://github.com/switchbrew/switch-tools/issues]) +AC_INIT([switch-tools],[1.13.1],[https://github.com/switchbrew/switch-tools/issues]) AC_CONFIG_SRCDIR([src/build_pfs0.c]) AM_INIT_AUTOMAKE([subdir-objects]) diff --git a/src/npdmtool.c b/src/npdmtool.c index 7b1c62b..60f67a8 100644 --- a/src/npdmtool.c +++ b/src/npdmtool.c @@ -830,15 +830,11 @@ int CreateNpdm(const char *json, void **dst, u32 *dst_size) { int allow_debug = 0; int force_debug = 0; int force_debug_prod = 0; - if (!cJSON_GetBoolean(value, "allow_debug", &allow_debug)) { - status = 0; - goto NPDM_BUILD_END; - } - if (!cJSON_GetBoolean(value, "force_debug", &force_debug)) { - status = 0; - goto NPDM_BUILD_END; - } - if (!cJSON_GetBoolean(value, "force_debug_prod", &force_debug_prod)) { + cJSON_GetBoolean(value, "allow_debug", &allow_debug); + cJSON_GetBoolean(value, "force_debug", &force_debug); + cJSON_GetBoolean(value, "force_debug_prod", &force_debug_prod); + if ( allow_debug + force_debug + force_debug_prod > 1 ) { + fprintf(stderr, "Only one debug flag can be set!\n"); status = 0; goto NPDM_BUILD_END; }