* avr-tdep.c (avr_scan_prologue): Fix to avoid a buffer over run which
authorTheodore A. Roth <troth@openavr.org>
Sat, 14 Jun 2003 20:33:39 +0000 (20:33 +0000)
committerTheodore A. Roth <troth@openavr.org>
Sat, 14 Jun 2003 20:33:39 +0000 (20:33 +0000)
causes gdb to seg fault.

gdb/ChangeLog
gdb/avr-tdep.c

index 9dac8f20edb4eb022eeb11ce7a19f2c21b3b0c3b..79578abf2318a6e652e9f0a31dca00b8cb180d59 100644 (file)
@@ -1,3 +1,8 @@
+2003-06-14  Theodore A. Roth  <troth@openavr.org>
+
+       * avr-tdep.c (avr_scan_prologue): Fix to avoid a buffer over run which
+       causes gdb to seg fault.
+
 2003-06-14  Daniel Jacobowitz  <drow@mvista.com>
 
        * sparc-nat.c (fetch_inferior_registers): Correct
index df1ffddcc8875502d20569394185cf80cb27a606..e9d59960751442ffddf00d1211c731df99c96192 100644 (file)
@@ -486,7 +486,7 @@ avr_scan_prologue (struct frame_info *fi)
      frame pointer, adjust the stack pointer, and save registers.  */
 
   get_frame_extra_info (fi)->framesize = 0;
-  prologue_len = prologue_end - prologue_start;
+  prologue_len = min (prologue_end - prologue_start, AVR_MAX_PROLOGUE_SIZE);
   read_memory (prologue_start, prologue, prologue_len);
 
   /* Scanning main()'s prologue