* valprint.c (val_print_string): If errcode is set, always print
authorJim Kingdon <jkingdon@engr.sgi.com>
Tue, 1 Mar 1994 18:56:33 +0000 (18:56 +0000)
committerJim Kingdon <jkingdon@engr.sgi.com>
Tue, 1 Mar 1994 18:56:33 +0000 (18:56 +0000)
an error, regardless of force_ellipsis.  In the non-EIO case,
just print the error message rather than calling error().  Don't
access *(bufptr-1) if bufptr points to the start of the buffer.
When looking for '\0', don't increment bufptr and addr if bufptr
started out already at limit.  If an error happens on fetching the
first character, don't print the string.

gdb/valprint.c

index 7db3e3da62b23c901b834f31862bf8843fa682a1..ed3cc643cb86e2e213a654c8afd09294ec51a7e6 100644 (file)
@@ -728,10 +728,6 @@ val_print_string (addr, len, stream)
   struct cleanup *old_chain = NULL; /* Top of the old cleanup chain. */
   char peekchar;               /* Place into which we can read one char. */
 
-  /* If errcode is non-zero, this is the address which failed to read
-     successfully.  */
-  CORE_ADDR err_addr;
-
   /* First we need to figure out the limit on the number of characters we are
      going to attempt to fetch and print.  This is actually pretty simple.  If
      LEN is nonzero, then the limit is the minimum of LEN and print_max.  If
@@ -777,7 +773,6 @@ val_print_string (addr, len, stream)
 
     /* Read as much as we can. */
     nfetch = target_read_memory_partial (addr, bufptr, nfetch, &errcode);
-    err_addr = addr + nfetch;
     if (len != 0)
       {
        addr += nfetch;