File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -193,16 +193,23 @@ def canonic_filename(self, frame: Optional[FrameType]) -> str:
193193 canonic() value, a string."""
194194 if frame is None :
195195 return "?? - No frame"
196+
197+ filename = frame .f_code .co_filename
198+ if "<string>" == filename :
199+ if (new_filename := pyficache .main .code2_tempfile .get (frame .f_code )):
200+ filename = new_filename
196201 return self .canonic (frame .f_code .co_filename )
197202
198- def filename (self , filename = None ):
203+ def filename (self , filename = None ) -> Optional [ str ] :
199204 """Return filename or the basename of that depending on the
200205 basename setting"""
201206 if filename is None :
202207 if self .debugger .mainpyfile :
203208 filename = self .debugger .mainpyfile
204209 else :
205210 return None
211+
212+ filename = pyficache .unmap_file (filename )
206213 if self .debugger .settings ["basename" ]:
207214 return osp .basename (filename )
208215 return filename
Original file line number Diff line number Diff line change @@ -335,17 +335,9 @@ def format_stack_entry(
335335
336336def frame2file (core_obj , frame , canonic = True ):
337337 if canonic :
338- filename = core_obj .filename (core_obj .canonic_filename (frame ))
338+ return core_obj .filename (core_obj .canonic_filename (frame ))
339339 else :
340- filename = core_obj .filename (frame .f_code .co_filename )
341-
342- print ("WOOT" )
343- # if frame_info := FrameInfo.get(frame):
344- # if canonic:
345- # return core_obj.filename(frame_info.filename)
346- # return frame_info.filename
347-
348- return filename
340+ return core_obj .filename (frame .f_code .co_filename )
349341
350342
351343def frame2filesize (frame ):
Original file line number Diff line number Diff line change @@ -206,9 +206,11 @@ def prefix_for_source_text(source_text: str, maxwidth: int) -> str:
206206 dbgr_obj .eval_string ,
207207 tempdir = proc_obj .settings ("tempdir" ),
208208 )
209- pyficache .remap_file (filename , remapped_file )
209+ # pyficache.remap_file(filename, remapped_file)
210+ pyficache .main .code2_tempfile [frame .f_code ] = filename
211+ print (f"XXX1 WOOT { pyficache .main .code2_tempfile } " )
210212 filename , line_number = pyficache .unmap_file_line (
211- filename , line_number
213+ remapped_file , line_number
212214 )
213215 pass
214216 pass
@@ -327,6 +329,7 @@ def prefix_for_source_text(source_text: str, maxwidth: int) -> str:
327329 pyficache .remap_file (remapped_file , filename )
328330 fd .close ()
329331 if source_text :
332+ pyficache .main .code2_tempfile [frame .f_code ] = remapped_file
330333 intf_obj .msg (
331334 f"remapped string { prefix_for_source_text (source_text , 10 )} to file { remapped_file } "
332335 )
You can’t perform that action at this time.
0 commit comments