/* Native debugging support for Intel x86 running DJGPP.
- Copyright (C) 1997-2014 Free Software Foundation, Inc.
+ Copyright (C) 1997-2017 Free Software Foundation, Inc.
Written by Robert Hoehne.
This file is part of GDB.
else
res = read_child (memaddr, readbuf, len);
- if (res <= 0)
+ /* read_child and write_child return zero on success, non-zero on
+ failure. */
+ if (res != 0)
return TARGET_XFER_E_IO;
- *xfered_len = res;
+ *xfered_len = len;
return TARGET_XFER_OK;
}
}
static void
-go32_create_inferior (struct target_ops *ops, char *exec_file,
- char *args, char **env, int from_tty)
+go32_create_inferior (struct target_ops *ops,
+ const char *exec_file,
+ const std::string &allargs, char **env, int from_tty)
{
extern char **environ;
jmp_buf start_state;
size_t cmdlen;
struct inferior *inf;
int result;
+ const char *args = allargs.c_str ();
/* If no exec file handed to us, get it from the exec-file command -- with
a good, common error message if none is specified. */
if (cmdlen > 1024*1024)
error (_("Command line too long."));
- cmdline = xmalloc (cmdlen + 4);
+ cmdline = (char *) xmalloc (cmdlen + 4);
strcpy (cmdline + 1, args);
/* If the command-line length fits into DOS 126-char limits, use the
DOS command tail format; otherwise, tell v2loadimage to pass it
xfree (cmdline);
if (result != 0)
- error (_("Load failed for image %s", exec_file);
+ error (_("Load failed for image %s"), exec_file);
edi_init (start_state);
#if __DJGPP_MINOR__ < 3
static int
go32_thread_alive (struct target_ops *ops, ptid_t ptid)
{
- return !ptid_equal (inferior_ptid, null_ptid);
+ return !ptid_equal (ptid, null_ptid);
}
-static char *
+static const char *
go32_pid_to_str (struct target_ops *ops, ptid_t ptid)
{
return normal_pid_to_str (ptid);
/* CPUID with EAX = 1 returns processor signature and features. */
if (cpuid_max >= 1)
{
- static char *brand_name[] = {
+ static const char *brand_name[] = {
"",
" Celeron",
" III",