Skip to content

Commit 2eccb6d

Browse files
committed
More PY3 compatibility fixes
1 parent c4bae52 commit 2eccb6d

File tree

3 files changed

+5
-7
lines changed

3 files changed

+5
-7
lines changed

haystack/reverse/context.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,7 @@ def get_predecessors(self, record):
200200
predecessors_label = self.__record_graph.predecessors(hex(record.address))
201201
records = []
202202
for label in predecessors_label:
203+
# FIXME, eradicate all L for PY3 migration
203204
if label[-1] == 'L':
204205
label = label[:-1]
205206
record_addr = int(label, 16)
@@ -381,7 +382,7 @@ def listStructuresAddresses(self):
381382
return list(map(long, self._list_records().keys()))
382383

383384
def listStructures(self):
384-
return self._list_records().values()
385+
return list(self._list_records().values())
385386

386387
def is_known_address(self, address):
387388
return address in self._structures_addresses
@@ -459,10 +460,10 @@ def cacheLoad(cls, memory_handler, heap_addr):
459460
try:
460461
with open(context_cache, 'rb') as fin:
461462
ctx = pickle.load(fin)
462-
except EOFError as e:
463+
except (ValueError, EOFError) as e:
463464
os.remove(context_cache)
464465
log.error('Error in the context file. File cleaned. Please restart.')
465-
raise RuntimeError('Error in the context file. File cleaned. Please restart.')
466+
raise IOError('Error in the context file. File cleaned. Please restart.')
466467
log.debug('\t[-] loaded my context from cache')
467468
ctx.config = config
468469
ctx.memory_handler = memory_handler

test/haystack/mappings/test_base.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -292,8 +292,6 @@ def test_hasRef(self):
292292
self.assertTrue(self.memory_handler.hasRef(int, 0xcafecafe))
293293
self.assertTrue(self.memory_handler.hasRef(float, 0xcafecafe))
294294
self.assertTrue(self.memory_handler.hasRef(str, 0xcafecafe))
295-
# FIXME, where does unicode comes from ?
296-
self.assertFalse(self.memory_handler.hasRef(unicode, 0xcafecafe))
297295
self.assertFalse(self.memory_handler.hasRef(int, 0xdeadbeef))
298296
me = self.memory_handler.getRefByAddr(0xcafecafe)
299297
# multiple refs

test/haystack/search/test_api.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -190,8 +190,7 @@ def test_refresh(self):
190190
self.assertEqual(validated, True)
191191
self.assertEqual(usual.val1, 0x0aaaaaaa)
192192
self.assertEqual(usual.val2, 0x0ffffff0)
193-
self.assertEqual(usual.txt, 'This a string with a test this is a test '
194-
'string')
193+
self.assertEqual(usual.txt, b'This a string with a test this is a test string')
195194

196195
# so now we got python objects
197196
# that is node 1

0 commit comments

Comments
 (0)