diff --git a/gdbstub/user.c b/gdbstub/user.c index 2e14ded3f0..e233c59816 100644 --- a/gdbstub/user.c +++ b/gdbstub/user.c @@ -317,7 +317,7 @@ static bool gdb_accept_socket(int gdb_fd) static int gdbserver_open_socket(const char *path, Error **errp) { g_autoptr(GString) buf = g_string_new(""); - char *pid_placeholder; + const char *pid_placeholder; pid_placeholder = strstr(path, "%d"); if (pid_placeholder != NULL) { diff --git a/hw/i386/x86-common.c b/hw/i386/x86-common.c index c844749900..f77e2e6304 100644 --- a/hw/i386/x86-common.c +++ b/hw/i386/x86-common.c @@ -654,7 +654,7 @@ void x86_load_linux(X86MachineState *x86ms, uint8_t header[8192], *setup, *kernel; hwaddr real_addr, prot_addr, cmdline_addr, initrd_addr = 0; FILE *f; - char *vmode; + const char *vmode; MachineState *machine = MACHINE(x86ms); struct setup_data *setup_data; const char *kernel_filename = machine->kernel_filename; diff --git a/monitor/hmp.c b/monitor/hmp.c index 34e2b8f748..a3ee02e52c 100644 --- a/monitor/hmp.c +++ b/monitor/hmp.c @@ -577,10 +577,11 @@ static const char *get_command_name(const char *cmdline, * Read key of 'type' into 'key' and return the current * 'type' pointer. */ -static char *key_get_info(const char *type, char **key) +static const char *key_get_info(const char *type, char **key) { size_t len; - char *p, *str; + const char *p; + char *str; if (*type == ',') { type++; diff --git a/tests/vhost-user-bridge.c b/tests/vhost-user-bridge.c index a5c711b1de..ce4c3426d3 100644 --- a/tests/vhost-user-bridge.c +++ b/tests/vhost-user-bridge.c @@ -746,14 +746,12 @@ vubr_run(VubrDev *dev) static int vubr_parse_host_port(const char **host, const char **port, const char *buf) { - char *p = strchr(buf, ':'); - - if (!p) { + g_auto(GStrv) tokens = g_strsplit(buf, ":", 2); + if (!tokens[0] || !tokens[1]) { return -1; } - *p = '\0'; - *host = strdup(buf); - *port = strdup(p + 1); + *host = g_steal_pointer(&tokens[0]); + *port = g_steal_pointer(&tokens[1]); return 0; }