* breakpoint.c, breakpoint.h (breakpoint_init_inferior): New function
[deliverable/binutils-gdb.git] / gdb / remote.c
index efdc7d94a07a1fe1a9d12a000c28ce5ea3191704..d3fef8ba12b440c4b283dec1875f3cb25909dd78 100644 (file)
@@ -221,10 +221,6 @@ static int timeout = 2;
 int icache;
 #endif
 
-/* FIXME: This is a hack which lets this file compile.  It should be getting
-   this setting from remote-utils.c.  */
-#define remote_debug (0)
-
 /* Descriptor for I/O to remote machine.  Initialize it to NULL so that
    remote_open knows that we don't have a file open when the program
    starts.  */
@@ -306,6 +302,10 @@ device is attached to the remote system (e.g. /dev/ttya).");
 
   SERIAL_RAW (remote_desc);
 
+  /* If there is something sitting in the buffer we might take it as a
+     response to a command, which would be bad.  */
+  SERIAL_FLUSH_INPUT (remote_desc);
+
   if (from_tty)
     {
       puts_filtered ("Remote debugging using ");
@@ -409,7 +409,7 @@ remote_interrupt (signo)
   /* If this doesn't work, try more severe steps.  */
   signal (signo, remote_interrupt_twice);
   
-  if (remote_debug)
+  if (sr_get_debug ())
     printf ("remote_interrupt called\n");
 
   SERIAL_WRITE (remote_desc, "\003", 1); /* Send a ^C */
@@ -537,8 +537,15 @@ remote_wait (status)
            {
              struct section_offsets *offs;
 
+             /* FIXME: This code assumes gdb-stabs.h is being used;
+                it's broken for xcoff, dwarf, sdb-coff, etc.  But
+                there is no simple canonical representation for this
+                stuff.  (Just what does "text" as seen by the stub
+                mean, anyway?).  */
+
              /* FIXME: Why don't the various symfile_offsets routines
-                in the sym_fns vectors set this?  */
+                in the sym_fns vectors set this?
+                (no good reason -kingdon).  */
              if (symfile_objfile->num_sections == 0)
                symfile_objfile->num_sections = SECT_OFF_MAX;
 
@@ -933,7 +940,7 @@ putpkt (buf)
 
   while (1)
     {
-      if (remote_debug)
+      if (sr_get_debug ())
        {
          *p = '\0';
          printf ("Sending packet: %s...", buf2);  fflush(stdout);
@@ -949,7 +956,7 @@ putpkt (buf)
          switch (ch)
            {
            case '+':
-             if (remote_debug)
+             if (sr_get_debug ())
                printf("Ack\n");
              return;
            case SERIAL_TIMEOUT:
@@ -959,7 +966,7 @@ putpkt (buf)
            case SERIAL_EOF:
              error ("putpkt: EOF while trying to read ACK");
            default:
-             if (remote_debug)
+             if (sr_get_debug ())
                printf ("%02X %c ", ch&0xFF, ch);
              continue;
            }
@@ -1000,7 +1007,7 @@ getpkt (buf, forever)
          if (forever)
            continue;
          if (++retries >= MAX_RETRIES)
-           if (remote_debug) puts_filtered ("Timed out.\n");
+           if (sr_get_debug ()) puts_filtered ("Timed out.\n");
          goto out;
        }
 
@@ -1018,13 +1025,13 @@ getpkt (buf, forever)
          c = readchar ();
          if (c == SERIAL_TIMEOUT)
            {
-             if (remote_debug)
+             if (sr_get_debug ())
                puts_filtered ("Timeout in mid-packet, retrying\n");
              goto whole;               /* Start a new packet, count retries */
            } 
          if (c == '$')
            {
-             if (remote_debug)
+             if (sr_get_debug ())
                puts_filtered ("Saw new packet start in middle of old one\n");
              goto whole;               /* Start a new packet, count retries */
            }
@@ -1069,7 +1076,7 @@ out:
 
   SERIAL_WRITE (remote_desc, "+", 1);
 
-  if (remote_debug)
+  if (sr_get_debug ())
     fprintf (stderr,"Packet received: %s\n", buf);
 }
 \f
This page took 0.02437 seconds and 4 git commands to generate.