537 """ |
537 """ |
538 fr = self.cFrame |
538 fr = self.cFrame |
539 stack = [] |
539 stack = [] |
540 while fr is not None: |
540 while fr is not None: |
541 fname = self._dbgClient.absPath(self.fix_frame_filename(fr)) |
541 fname = self._dbgClient.absPath(self.fix_frame_filename(fr)) |
542 fline = fr.f_lineno |
542 if not fname.startswith("<"): |
543 ffunc = fr.f_code.co_name |
543 fline = fr.f_lineno |
544 |
544 ffunc = fr.f_code.co_name |
545 if ffunc == '?': |
545 |
546 ffunc = '' |
546 if ffunc == '?': |
547 |
547 ffunc = '' |
548 stack.append([fname, fline, ffunc]) |
548 |
|
549 if ffunc and not ffunc.startswith("<"): |
|
550 argInfo = inspect.getargvalues(fr) |
|
551 fargs = inspect.formatargvalues(argInfo.args, argInfo.varargs, |
|
552 argInfo.keywords, argInfo.locals) |
|
553 else: |
|
554 fargs = "" |
|
555 |
|
556 stack.append([fname, fline, ffunc, fargs]) |
549 |
557 |
550 if fr == self._dbgClient.mainFrame: |
558 if fr == self._dbgClient.mainFrame: |
551 fr = None |
559 fr = None |
552 else: |
560 else: |
553 fr = fr.f_back |
561 fr = fr.f_back |
586 # problems where an exception/breakpoint has occurred |
594 # problems where an exception/breakpoint has occurred |
587 # but we had disabled tracing along the way via a None |
595 # but we had disabled tracing along the way via a None |
588 # return from dispatch_call |
596 # return from dispatch_call |
589 fr.f_trace = self.trace_dispatch |
597 fr.f_trace = self.trace_dispatch |
590 fname = self._dbgClient.absPath(self.fix_frame_filename(fr)) |
598 fname = self._dbgClient.absPath(self.fix_frame_filename(fr)) |
591 fline = fr.f_lineno |
599 if not fname.startswith("<"): |
592 ffunc = fr.f_code.co_name |
600 fline = fr.f_lineno |
593 |
601 ffunc = fr.f_code.co_name |
594 if ffunc == '?': |
602 |
595 ffunc = '' |
603 if ffunc == '?': |
596 |
604 ffunc = '' |
597 stack.append([fname, fline, ffunc]) |
605 |
|
606 if ffunc and not ffunc.startswith("<"): |
|
607 argInfo = inspect.getargvalues(fr) |
|
608 fargs = inspect.formatargvalues(argInfo.args, argInfo.varargs, |
|
609 argInfo.keywords, argInfo.locals) |
|
610 else: |
|
611 fargs = "" |
|
612 |
|
613 stack.append([fname, fline, ffunc, fargs]) |
598 |
614 |
599 if fr == self._dbgClient.mainFrame: |
615 if fr == self._dbgClient.mainFrame: |
600 fr = None |
616 fr = None |
601 else: |
617 else: |
602 fr = fr.f_back |
618 fr = fr.f_back |