This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [pushed][PATCH v3 1/4] Extended-remote follow exec
- From: Pedro Alves <palves at redhat dot com>
- To: Thomas Schwinge <thomas at codesourcery dot com>, Don Breazeal <donb at codesourcery dot com>, gdb-patches at sourceware dot org
- Cc: bug-hurd at gnu dot org, 834575 at bugs dot debian dot org, 834575-forwarded at bugs dot debian dot org, svante dot signell at gmail dot com
- Date: Fri, 17 Feb 2017 16:45:01 +0000
- Subject: Re: [pushed][PATCH v3 1/4] Extended-remote follow exec
- Authentication-results: sourceware.org; auth=none
- References: <1441996698-12694-1-git-send-email-donb@codesourcery.com> <87vauuiqkj.fsf@euler.schwinge.homeip.net>
Hi Thomas,
Only noticed this patch now.
> On GNU/Hurd, there is no "#define PATH_MAX", so this fails to build.
> (I'm aware that there is other PATH_MAX usage in GDB sources, which we
> ought to fix at some point, for example in gdbserver -- which is not yet
> enabled for GNU/Hurd.)
>
> OK to push the following? (Similar to Svante's patch in
> <https://bugs.debian.org/834575>.)
>
> --- gdb/remote.c
> +++ gdb/remote.c
> @@ -6927,7 +6927,6 @@ Packet: '%s'\n"),
> else if (strprefix (p, p1, "exec"))
> {
> ULONGEST ignored;
> - char pathname[PATH_MAX];
> int pathlen;
>
> /* Determine the length of the execd pathname. */
> @@ -6936,11 +6935,12 @@ Packet: '%s'\n"),
>
> /* Save the pathname for event reporting and for
> the next run command. */
> + char *pathname = (char *) xmalloc (pathlen + 1);
> hex2bin (p1, (gdb_byte *) pathname, pathlen);
> pathname[pathlen] = '\0';
hex2bin can throw, so wrap with a cleanup:
char *pathname = (char *) xmalloc (pathlen + 1);
struct cleanup *old_chain = make_cleanup (xfree, pathname);
hex2bin (p1, (gdb_byte *) pathname, pathlen);
pathname[pathlen] = '\0';
discard_cleanups (old_chain);
OK with that change.
Thanks,
Pedro Alves