pull/11/head
Zach Riggle 11 years ago
parent b15de2359a
commit 937fd1e05e

@ -2,6 +2,9 @@ import errno as _errno
import struct import struct
import pwndbg as _pwndbg import pwndbg as _pwndbg
import pwndbg.commands
import pwndbg.regs
_errno.errorcode[0] = 'OK' _errno.errorcode[0] = 'OK'
@_pwndbg.commands.ParsedCommand @_pwndbg.commands.ParsedCommand

@ -72,12 +72,12 @@ def connect(func, event_handler, name=''):
def caller(*a): def caller(*a):
if debug: sys.stdout.write('%r %s.%s %r\n' % (name, func.__module__, func.__name__, a)) if debug: sys.stdout.write('%r %s.%s %r\n' % (name, func.__module__, func.__name__, a))
if pause: return if pause: return
# with pwndbg.stdio.stdio: with pwndbg.stdio.stdio:
try: try:
func() func()
except Exception as e: except Exception as e:
traceback.print_exc() traceback.print_exc()
raise e raise e
registered[event_handler].append(caller) registered[event_handler].append(caller)
event_handler.connect(caller) event_handler.connect(caller)

@ -9,10 +9,13 @@ import sys
import gdb import gdb
import pwndbg.compat import pwndbg.compat
import gdb
import pwndbg.compat
def get(fd, mode): def get(fd, mode):
if pwndbg.compat.python3: if pwndbg.compat.python3:
file = io.open(fd, mode=mode, buffering=0, closefd=False) file = io.open(fd, mode=mode, buffering=0, closefd=False)
return io.TextIOWrapper(file, write_through=True, **kw) return io.TextIOWrapper(file, write_through=True)
else: else:
return os.fdopen(fd, mode, 0) return os.fdopen(fd, mode, 0)
@ -33,3 +36,8 @@ class Stdio(object):
sys.stdin, sys.stdout, sys.stderr = self.queue.pop() sys.stdin, sys.stdout, sys.stderr = self.queue.pop()
stdio = Stdio() stdio = Stdio()
if False:
sys.stdin = get(0, 'rb')
sys.stdout = get(1, 'wb')
sys.stderr = get(2, 'wb')

Loading…
Cancel
Save