* go32-nat.c: (go32_wait): If child_cwd[] is empty, initialize
it to GDB's current directory. (go32_create_inferior, init_go32_ops): Initialize child_cwd[] to an empty string, to signal an uninitialized value. From Robert Hoehne <robert.hoehne@gmx.net>.
This commit is contained in:
parent
f0dc282cbe
commit
3a45aed885
2 changed files with 23 additions and 2 deletions
|
@ -1,3 +1,11 @@
|
||||||
|
2000-08-05 Eli Zaretskii <eliz@is.elta.co.il>
|
||||||
|
|
||||||
|
* go32-nat.c: (go32_wait): If child_cwd[] is empty, initialize
|
||||||
|
it to GDB's current directory.
|
||||||
|
(go32_create_inferior, init_go32_ops): Initialize child_cwd[] to
|
||||||
|
an empty string, to signal an uninitialized value.
|
||||||
|
From Robert Hoehne <robert.hoehne@gmx.net>.
|
||||||
|
|
||||||
2000-08-04 Kevin Buettner <kevinb@redhat.com>
|
2000-08-04 Kevin Buettner <kevinb@redhat.com>
|
||||||
|
|
||||||
* symtab.h (fixup_psymbol_section): Declare.
|
* symtab.h (fixup_psymbol_section): Declare.
|
||||||
|
|
|
@ -389,6 +389,13 @@ go32_wait (int pid ATTRIBUTE_UNUSED, struct target_waitstatus *status)
|
||||||
point of changing back to where GDB thinks is its cwd, when we
|
point of changing back to where GDB thinks is its cwd, when we
|
||||||
return control to the debugger, but restore child's cwd before we
|
return control to the debugger, but restore child's cwd before we
|
||||||
run it. */
|
run it. */
|
||||||
|
/* Initialize child_cwd, before the first call to run_child and not
|
||||||
|
in the initialization, so the child get also the changed directory
|
||||||
|
set with the gdb-command "cd ..." */
|
||||||
|
if (!*child_cwd)
|
||||||
|
/* Initialize child's cwd with the current one. */
|
||||||
|
getcwd (child_cwd, sizeof (child_cwd));
|
||||||
|
|
||||||
chdir (child_cwd);
|
chdir (child_cwd);
|
||||||
|
|
||||||
#if __DJGPP_MINOR__ < 3
|
#if __DJGPP_MINOR__ < 3
|
||||||
|
@ -603,6 +610,11 @@ go32_create_inferior (char *exec_file, char *args, char **env)
|
||||||
}
|
}
|
||||||
resume_signal = -1;
|
resume_signal = -1;
|
||||||
resume_is_step = 0;
|
resume_is_step = 0;
|
||||||
|
|
||||||
|
/* Initialize child's cwd as empty to be initialized when starting
|
||||||
|
the child. */
|
||||||
|
*child_cwd = 0;
|
||||||
|
|
||||||
/* Init command line storage. */
|
/* Init command line storage. */
|
||||||
if (redir_debug_init (&child_cmd) == -1)
|
if (redir_debug_init (&child_cmd) == -1)
|
||||||
internal_error ("Cannot allocate redirection storage: not enough memory.\n");
|
internal_error ("Cannot allocate redirection storage: not enough memory.\n");
|
||||||
|
@ -1224,8 +1236,9 @@ init_go32_ops (void)
|
||||||
go32_ops.to_has_execution = 1;
|
go32_ops.to_has_execution = 1;
|
||||||
go32_ops.to_magic = OPS_MAGIC;
|
go32_ops.to_magic = OPS_MAGIC;
|
||||||
|
|
||||||
/* Initialize child's cwd with the current one. */
|
/* Initialize child's cwd as empty to be initialized when starting
|
||||||
getcwd (child_cwd, sizeof (child_cwd));
|
the child. */
|
||||||
|
*child_cwd = 0;
|
||||||
|
|
||||||
/* Initialize child's command line storage. */
|
/* Initialize child's command line storage. */
|
||||||
if (redir_debug_init (&child_cmd) == -1)
|
if (redir_debug_init (&child_cmd) == -1)
|
||||||
|
|
Loading…
Add table
Reference in a new issue