What's the extra frame? Why does Python have an effect on the number of frames seen by the minidump? Something seems wrong about that.
On Fri, Jan 8, 2016 at 3:41 PM Adrian McCarthy <amcca...@google.com> wrote: > amccarth created this revision. > amccarth added a reviewer: zturner. > amccarth added a subscriber: lldb-commits. > > Under Python 3, lldb sees an extra frame on the stack, so I check that the > stack has at least the number frames we expect. > > Python 3 doesn't have dict.iteritems(). I used a wrapper function from > six to keep this portable between the two versions. > > http://reviews.llvm.org/D16017 > > Files: > > packages/Python/lldbsuite/test/functionalities/postmortem/minidump/TestMiniDump.py > > Index: > packages/Python/lldbsuite/test/functionalities/postmortem/minidump/TestMiniDump.py > =================================================================== > --- > packages/Python/lldbsuite/test/functionalities/postmortem/minidump/TestMiniDump.py > +++ > packages/Python/lldbsuite/test/functionalities/postmortem/minidump/TestMiniDump.py > @@ -3,7 +3,7 @@ > """ > > from __future__ import print_function > - > +from six import iteritems > > > import lldb > @@ -83,8 +83,8 @@ > thread = process.GetThreadAtIndex(0) > > expected_stack = { 0: 'bar', 1: 'foo', 2: 'main' } > - self.assertEqual(thread.GetNumFrames(), len(expected_stack)) > - for index, name in expected_stack.iteritems(): > + self.assertGreaterEqual(thread.GetNumFrames(), > len(expected_stack)) > + for index, name in iteritems(expected_stack): > frame = thread.GetFrameAtIndex(index) > self.assertTrue(frame.IsValid()) > function_name = frame.GetFunctionName() > > >
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits