mirror of
https://github.com/radareorg/radare2.git
synced 2025-03-01 18:57:20 +00:00
Fix #4095 - VdW chopping down to 32bits
This commit is contained in:
parent
24d76819d0
commit
6b79f915df
@ -3467,7 +3467,7 @@ static int cmd_anal_all(RCore *core, const char *input) {
|
||||
r_core_cmd0 (core, "af @ entry0");
|
||||
break;
|
||||
case 'n': r_core_cmd0 (core, ".afna @@ fcn.*"); break;
|
||||
case 'p':
|
||||
case 'p': // "aap"
|
||||
if (*input == '?') {
|
||||
// TODO: accept parameters for ranges
|
||||
eprintf ("Usage: /aap ; find in memory for function preludes");
|
||||
|
@ -410,16 +410,17 @@ static int cmd_meta_hsdmf (RCore *core, const char *input) {
|
||||
break;
|
||||
case '-':
|
||||
switch (input[2]) {
|
||||
case '*':
|
||||
core->num->value = r_meta_del (core->anal,
|
||||
input[0], 0, UT64_MAX, NULL);
|
||||
break;
|
||||
case ' ':
|
||||
addr = r_num_math (core->num, input+3);
|
||||
default:
|
||||
core->num->value = r_meta_del (core->anal,
|
||||
input[0], addr, 1, NULL);
|
||||
break;
|
||||
case '*':
|
||||
core->num->value = r_meta_del (core->anal,
|
||||
input[0], 0, UT64_MAX, NULL);
|
||||
break;
|
||||
case ' ':
|
||||
addr = r_num_math (core->num, input+3);
|
||||
/* fallthrough */
|
||||
default:
|
||||
core->num->value = r_meta_del (core->anal,
|
||||
input[0], addr, 1, NULL);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case '*':
|
||||
@ -450,7 +451,7 @@ static int cmd_meta_hsdmf (RCore *core, const char *input) {
|
||||
t = strdup (input+2);
|
||||
p = NULL;
|
||||
n = 0;
|
||||
strncpy (name, t, sizeof (name)-1);
|
||||
strncpy (name, t, sizeof (name) - 1);
|
||||
if (*input != 'C') {
|
||||
n = r_num_math (core->num, t);
|
||||
if (type == 'f') {
|
||||
@ -466,10 +467,9 @@ static int cmd_meta_hsdmf (RCore *core, const char *input) {
|
||||
* save and reload.
|
||||
*/
|
||||
p = strchr (t, ' ');
|
||||
if (p)
|
||||
addr = r_num_math (core->num, p+1);
|
||||
if (p) addr = r_num_math (core->num, p+1);
|
||||
}
|
||||
if (!*t || n>0) {
|
||||
if (!*t || n > 0) {
|
||||
RFlagItem *fi;
|
||||
p = strchr (t, ' ');
|
||||
if (p) {
|
||||
@ -478,15 +478,16 @@ static int cmd_meta_hsdmf (RCore *core, const char *input) {
|
||||
} else
|
||||
switch (type) {
|
||||
case 'z':
|
||||
type='s';
|
||||
type = 's';
|
||||
/* fallthrough */
|
||||
case 's':
|
||||
// TODO: filter \n and so on :)
|
||||
strncpy (name, t, sizeof (name)-1);
|
||||
name[sizeof (name)-1] = '\0';
|
||||
r_core_read_at (core, addr, (ut8*)name, sizeof (name)-1);
|
||||
if (n < sizeof(name))
|
||||
if (n < sizeof (name)) {
|
||||
name[n] = '\0';
|
||||
else name[sizeof (name)-1] = '\0';
|
||||
} else name[sizeof (name)-1] = '\0';
|
||||
break;
|
||||
default:
|
||||
fi = r_flag_get_i (core->flags, addr);
|
||||
|
@ -1335,9 +1335,9 @@ static int handle_print_meta_infos (RCore * core, RDisasmState *ds, ut8* buf, in
|
||||
break;
|
||||
case 8:
|
||||
{
|
||||
ut64 *data = (ut64*)(buf+idx);
|
||||
r_mem_copyendian((ut8*)data, (ut8*)data, 8, !core->print->big_endian);
|
||||
r_cons_printf (".qword 0x%016x", *data);
|
||||
ut64 *data = (ut64*)(buf + idx);
|
||||
r_mem_copyendian ((ut8*)data, (const ut8*)data, 8, !core->print->big_endian);
|
||||
r_cons_printf (".qword 0x%016"PFMT64x, *data);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* radare - LGPL - Copyright 2009-2015 - pancake */
|
||||
/* radare - LGPL - Copyright 2009-2016 - pancake */
|
||||
|
||||
#include <r_core.h>
|
||||
|
||||
|
@ -1829,7 +1829,7 @@ R_API void r_core_visual_define (RCore *core) {
|
||||
p += cur;
|
||||
}
|
||||
{
|
||||
int h;
|
||||
int h = 0;
|
||||
(void)r_cons_get_size (&h);
|
||||
h-=19;
|
||||
if (h<0) {
|
||||
@ -1986,11 +1986,8 @@ R_API void r_core_visual_define (RCore *core) {
|
||||
}
|
||||
break;
|
||||
case 'W':
|
||||
{
|
||||
int asmbits = 64; //r_config_get_i (core->config, "asm.bits");
|
||||
r_meta_cleanup (core->anal, off, off+plen);
|
||||
r_meta_add (core->anal, R_META_TYPE_DATA, off, off+(asmbits/8), "");
|
||||
}
|
||||
r_meta_cleanup (core->anal, off, off + plen);
|
||||
r_meta_add (core->anal, R_META_TYPE_DATA, off, off + (64 / 8), "");
|
||||
break;
|
||||
case 'e':
|
||||
// set function size
|
||||
|
Loading…
x
Reference in New Issue
Block a user