2003-04-13 Michael Snyder <msnyder@redhat.com>
[binutils-gdb.git] / gdb / remote.c
index 902cb5fc62d6ef650ea37d21c6827247e5207baa..20becee27d6fe01f3fda4568d9aadb928f0b4181 100644 (file)
@@ -2948,7 +2948,7 @@ remote_wait (ptid_t ptid, struct target_waitstatus *status)
        case 'T':               /* Status with PC, SP, FP, ... */
          {
            int i;
-           char* regs = (char*) alloca (MAX_REGISTER_RAW_SIZE);
+           char regs[MAX_REGISTER_SIZE];
 
            /* Expedited reply, containing Signal, {regno, reg} repeat */
            /*  format is:  'Tssn...:r...;n...:r...;n...:r...;#cc', where
@@ -3199,7 +3199,7 @@ remote_async_wait (ptid_t ptid, struct target_waitstatus *status)
        case 'T':               /* Status with PC, SP, FP, ... */
          {
            int i;
-           char* regs = (char*) alloca (MAX_REGISTER_RAW_SIZE);
+           char regs[MAX_REGISTER_SIZE];
 
            /* Expedited reply, containing Signal, {regno, reg} repeat */
            /*  format is:  'Tssn...:r...;n...:r...;n...:r...;#cc', where
@@ -3546,7 +3546,7 @@ store_register_using_P (int regnum)
   struct packet_reg *reg = packet_reg_from_regnum (rs, regnum);
   /* Try storing a single register.  */
   char *buf = alloca (rs->remote_packet_size);
-  char *regp = alloca (MAX_REGISTER_RAW_SIZE);
+  char regp[MAX_REGISTER_SIZE];
   char *p;
   int i;
 
@@ -3973,7 +3973,10 @@ remote_xfer_memory (CORE_ADDR mem_addr, char *buffer, int mem_len,
   int targ_len;
   int res;
 
-  REMOTE_TRANSLATE_XFER_ADDRESS (mem_addr, mem_len, &targ_addr, &targ_len);
+  /* Should this be the selected frame?  */
+  gdbarch_remote_translate_xfer_address (current_gdbarch, current_regcache,
+                                        mem_addr, mem_len,
+                                        &targ_addr, &targ_len);
   if (targ_len <= 0)
     return 0;