From 8f16d507109d4a9b6518531ab007251107dad5f3 Mon Sep 17 00:00:00 2001 From: Lucas Vinicius Hartmann Date: Fri, 31 Jul 2026 10:48:24 -0300 Subject: [PATCH] Fix logic errors on _backend identification. --- src/cmsisDAP.cpp | 38 ++++++++++++++++++++++++++++---------- 1 file changed, 28 insertions(+), 10 deletions(-) diff --git a/src/cmsisDAP.cpp b/src/cmsisDAP.cpp index 5401e79..aa5b151 100644 --- a/src/cmsisDAP.cpp +++ b/src/cmsisDAP.cpp @@ -200,19 +200,37 @@ CmsisDAP::CmsisDAP(const cable_t &cable, int index, uint32_t clkHZ, int8_t verbo } if (is_error) { - if (BACKEND_HID) { - hid_close(_hid_dev); - hid_exit(); - } else { - libusb_close(_usb_dev); - libusb_exit(_ctx); + switch(_backend){ +#ifdef ENABLE_CMSISDAP_V1 + case BACKEND_HID: + hid_close(_hid_dev); + hid_exit(); + break; +#endif +#ifdef ENABLE_CMSISDAP_V2 + case BACKEND_USBBULK: + libusb_close(_usb_dev); + libusb_exit(_ctx); + break; +#endif + default: + break; } throw std::runtime_error("cmsisDAP: init Failed"); } else { - if (BACKEND_HID) { - printInfo("HID init successful"); - } else { - printInfo("USB bulk init successful"); + switch(_backend){ +#ifdef ENABLE_CMSISDAP_V1 + case BACKEND_HID: + printInfo("HID init successful"); + break; +#endif +#ifdef ENABLE_CMSISDAP_V2 + case BACKEND_USBBULK: + printInfo("USB bulk init successful"); + break; +#endif + default: + break; } } if (clkHZ > 0)