hp merge changes -- too numerous to mention here; see ChangeLog and
[deliverable/binutils-gdb.git] / gdb / corefile.c
index 7f66ec129ecd6fcc3a01e33460ff4bacbdf584d7..8ffe49d2e95abca90b09388924dfefb42d50b619 100644 (file)
@@ -325,6 +325,37 @@ read_memory_unsigned_integer (memaddr, len)
   read_memory (memaddr, buf, len);
   return extract_unsigned_integer (buf, len);
 }
+
+void
+read_memory_string (memaddr, buffer, max_len)
+     CORE_ADDR memaddr;
+     char * buffer;
+     int max_len;
+{
+  register char * cp;
+  register int i;
+  int cnt;
+
+  cp = buffer;
+  while (1)
+    {
+      if (cp - buffer >= max_len)
+        {
+          buffer[max_len - 1] = '\0';
+          break;
+        }
+      cnt = max_len - (cp - buffer);
+      if (cnt > 8)
+       cnt = 8;
+      read_memory (memaddr + (int) (cp - buffer), cp, cnt);
+      for (i = 0; i < cnt && *cp; i++, cp++)
+        ; /* null body */
+
+      if (i < cnt && !*cp)
+        break;
+    }
+}
+
 \f
 #if 0
 /* Enable after 4.12.  It is not tested.  */
This page took 0.033034 seconds and 4 git commands to generate.