mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-07-25 20:25:28 +03:00
25 lines
1.3 KiB
Diff
25 lines
1.3 KiB
Diff
Without this patch, linking against libjim dynamically will cause an
|
|
infinite loop. We just fix the memory leak, for which this thingy is
|
|
supposed to be a workaround, directly in the jimtcl package instead.
|
|
|
|
See: https://gitlab.alpinelinux.org/alpine/aports/-/issues/13046#note_182639
|
|
|
|
diff -upr a/src/helper/command.c b/src/helper/command.c
|
|
--- a/src/helper/command.c 2021-10-02 11:47:43.452995606 +0200
|
|
+++ b/src/helper/command.c 2021-10-02 11:51:10.803049538 +0200
|
|
@@ -148,9 +148,14 @@ static void command_log_capture_finish(s
|
|
* If jimtcl is linked-in from a precompiled library, either static or dynamic,
|
|
* the symbol Jim_CreateCommandObj is not exported and the build will use the
|
|
* bugged API.
|
|
+ *
|
|
+ * This workaround creates an infinite loop when OpenOCD is linked
|
|
+ * dynamically against jimtcl on Alpine and thus only enabled if the internal
|
|
+ * version of jimtcl is used.
|
|
+ *
|
|
* To be removed when OpenOCD will switch to jimtcl 0.81
|
|
*/
|
|
-#if JIM_VERSION == 80 && defined __linux__
|
|
+#if JIM_VERSION == 80 && defined __linux__ && defined INTERNAL_JIMTCL
|
|
static int workaround_createcommand(Jim_Interp *interp, const char *cmdName,
|
|
Jim_CmdProc *cmdProc, void *privData, Jim_DelCmdProc *delProc);
|
|
int Jim_CreateCommandObj(Jim_Interp *interp, Jim_Obj *cmdNameObj,
|