diff options
Diffstat (limited to 'gdb/procfs.c')
-rw-r--r-- | gdb/procfs.c | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/gdb/procfs.c b/gdb/procfs.c index b03809c..4b965ea 100644 --- a/gdb/procfs.c +++ b/gdb/procfs.c @@ -5100,7 +5100,6 @@ procfs_info_proc (struct target_ops *ops, const char *args, struct cleanup *old_chain; procinfo *process = NULL; procinfo *thread = NULL; - char **argv = NULL; char *tmp = NULL; int pid = 0; int tid = 0; @@ -5121,24 +5120,19 @@ procfs_info_proc (struct target_ops *ops, const char *args, } old_chain = make_cleanup (null_cleanup, 0); - if (args) - { - argv = gdb_buildargv (args); - make_cleanup_freeargv (argv); - } - while (argv != NULL && *argv != NULL) + gdb_argv built_argv (args); + for (char *arg : argv) { - if (isdigit (argv[0][0])) + if (isdigit (arg[0])) { - pid = strtoul (argv[0], &tmp, 10); + pid = strtoul (arg, &tmp, 10); if (*tmp == '/') tid = strtoul (++tmp, NULL, 10); } - else if (argv[0][0] == '/') + else if (arg[0] == '/') { - tid = strtoul (argv[0] + 1, NULL, 10); + tid = strtoul (arg + 1, NULL, 10); } - argv++; } if (pid == 0) pid = ptid_get_pid (inferior_ptid); |