gdb_server: fix invalid free

`gdb_service_free` calls `free(gdb_port_next)`, so this needs to be an
allocated string.  Otherwise we trip up detectors like Android's tagged
pointers.

Change-Id: Ib08ea55a38af4e15c4fbae95f10db0e3684ae1af
Signed-off-by: Jim Paris <jimparis@meta.com>
Reviewed-on: https://review.openocd.org/c/openocd/+/8768
Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
Tested-by: jenkins
This commit is contained in:
Jim Paris 2025-02-21 12:33:45 -05:00 committed by Antonio Borneo
parent c986b4dbf2
commit accbeaed99
1 changed files with 2 additions and 1 deletions

View File

@ -3898,7 +3898,8 @@ static int gdb_target_add_one(struct target *target)
}
}
} else if (strcmp(gdb_port_next, "pipe") == 0) {
gdb_port_next = "disabled";
free(gdb_port_next);
gdb_port_next = strdup("disabled");
}
}
return retval;