From 211fdb15da56b53174f06b6f85cf27ceb639b369 Mon Sep 17 00:00:00 2001 From: Zach Riggle Date: Sun, 12 Apr 2015 11:22:36 -0700 Subject: [PATCH] Change how memory is printed for RWX address spaces --- pwndbg/enhance.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/pwndbg/enhance.py b/pwndbg/enhance.py index 6991a81b1..673700bb0 100644 --- a/pwndbg/enhance.py +++ b/pwndbg/enhance.py @@ -70,10 +70,9 @@ def enhance(value): instr = None szval = pwndbg.strings.get(value) or None - if szval and len(szval) > 5: + szval0 = szval + if szval: szval = repr(szval) - else: - szval = None intval = int(pwndbg.memory.poi(pwndbg.typeinfo.pvoid, value)) intval0 = intval @@ -97,14 +96,17 @@ def enhance(value): # If it's an instruction and *not* RWX, display it unconditionally elif instr and exe: if not rwx: - retval = [instr] + if szval: + retval = [instr, szval] + else: + retval = [instr] else: retval = [instr, intval, szval] # Otherwise strings have preference elif szval: - if len(szval) < pwndbg.arch.ptrsize: - retval = [szval, intval] + if len(szval0) < pwndbg.arch.ptrsize: + retval = [intval, szval] else: retval = [szval]