DebugClients/Python3/DebugBase.py

branch
debugger speed
changeset 5063
0b5dccc8aacb
parent 5062
904225763ac0
child 5064
9f4e3914e50c
equal deleted inserted replaced
5062:904225763ac0 5063:0b5dccc8aacb
570 Public method reimplemented to handle the program about to execute a 570 Public method reimplemented to handle the program about to execute a
571 particular line. 571 particular line.
572 572
573 @param frame the frame object 573 @param frame the frame object
574 """ 574 """
575 line = frame.f_lineno
576
577 # We never stop on line 0. 575 # We never stop on line 0.
578 if line == 0: 576 if frame.f_lineno == 0:
579 return 577 return
580 578
581 # See if we are skipping at the start of a newly loaded program. 579 # See if we are skipping at the start of a newly loaded program.
580 # Then get the complete frame stack without eric or Python supplied
581 # libraries
582 if self._dbgClient.mainFrame is None: 582 if self._dbgClient.mainFrame is None:
583 fr = frame 583 fr = frame
584 while (fr is not None and 584 while (fr is not None and
585 fr.f_code != self._dbgClient.handleLine.__code__): 585 fr.f_code != self._dbgClient.handleLine.__code__):
586 if (fr.f_code.co_filename == '<string>' or
587 os.path.dirname(fr.f_code.co_filename) == self.lib):
588 break
589
586 self._dbgClient.mainFrame = fr 590 self._dbgClient.mainFrame = fr
587 fr = fr.f_back 591 fr = fr.f_back
588 592
589 self.currentFrame = frame 593 self.currentFrame = frame
590 594

eric ide

mercurial