When usng gdb pipes we need to keep openocd output at a minimum,
otherwise the gdb stdin will overflow and fail.
Make the calls to gdb_port and log_output synchronous to stop this.
Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
const char *home = getenv("HOME");
- if (home)
+ if (home)
{
char *path;
path = alloc_printf("%s/.openocd", home);
- if (path)
+ if (path)
{
add_script_search_dir(path);
free(path);
}
break;
case 'p':
+ /* to replicate the old syntax this needs to be synchronous
+ * otherwise the gdb stdin will overflow with the warning message */
+ command_run_line(cmd_ctx, "gdb_port pipe; log_output openocd.log");
LOG_WARNING("deprecated option: -p/--pipe. Use '-c \"gdb_port pipe; log_output openocd.log\"' instead.");
- add_config_command("gdb_port pipe; log_output openocd.log");
break;
}
}