X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=libiberty%2Fpexecute.c;h=97f157447b71407b6804afc071cdd5c49b37c289;hb=03f0fdd81264feaf39579e6b510639d3dcc61822;hp=60a280b8e472931106d9d8bf7f800bdf17851872;hpb=f2d737fcc038aa7c222c4d6541ad057eb4ef489c;p=pf3gnuchains%2Fgcc-fork.git diff --git a/libiberty/pexecute.c b/libiberty/pexecute.c index 60a280b8e47..97f157447b7 100644 --- a/libiberty/pexecute.c +++ b/libiberty/pexecute.c @@ -47,7 +47,7 @@ pexecute (const char *program, char * const *argv, const char *pname, { if (pex != NULL) { - *errmsg_fmt = "pexecute already in progress"; + *errmsg_fmt = (char *) "pexecute already in progress"; *errmsg_arg = NULL; return -1; } @@ -58,7 +58,7 @@ pexecute (const char *program, char * const *argv, const char *pname, { if (pex == NULL) { - *errmsg_fmt = "pexecute not in progress"; + *errmsg_fmt = (char *) "pexecute not in progress"; *errmsg_arg = NULL; return -1; } @@ -101,7 +101,10 @@ pwait (int pid, int *status, int flags ATTRIBUTE_UNUSED) vector = XNEWVEC (int, idx); if (!pex_get_status (pex, idx, vector)) - return -1; + { + free (vector); + return -1; + } *status = vector[pid]; free (vector); }