File tree Expand file tree Collapse file tree 2 files changed +12
-4
lines changed Expand file tree Collapse file tree 2 files changed +12
-4
lines changed Original file line number Diff line number Diff line change @@ -66,7 +66,7 @@ def __init__(self, traceback=None):
66
66
self .tb_lineno = traceback .tb_lineno if traceback else None
67
67
self .tb_next = FakeTraceback (
68
68
traceback .tb_next ) if traceback and traceback .tb_next else None
69
- self .tb_lasti = 0
69
+ self .tb_lasti = traceback . tb_lasti if traceback else 0
70
70
71
71
72
72
class FakeFrame (FakeType ):
@@ -78,6 +78,8 @@ def __init__(self, frame):
78
78
self .f_globals = self ._convert_dict (frame .f_globals )
79
79
self .f_lineno = frame .f_lineno
80
80
self .f_back = FakeFrame (frame .f_back ) if frame .f_back else None
81
+ self .f_lasti = frame .f_lasti
82
+ self .f_builtins = frame .f_builtins
81
83
82
84
83
85
class FakeClass (FakeType ):
@@ -107,6 +109,8 @@ def __init__(self, code):
107
109
code , "co_lines" ) else []
108
110
if hasattr (code , "co_kwonlyargcount" ):
109
111
self .co_kwonlyargcount = code .co_kwonlyargcount
112
+ if hasattr (code , "co_positions" ):
113
+ self .co_positions = code .co_positions
110
114
111
115
def co_lines (self ):
112
116
return iter (self ._co_lines )
Original file line number Diff line number Diff line change 14
14
def save_dumping (filename = None , tb = None ):
15
15
try :
16
16
if tb is None :
17
- tb = sys .exc_info ()[ 2 ]
17
+ exc_type , exc_value , exc_tb = sys .exc_info ()
18
18
19
19
if filename is None :
20
20
filename = "%s:%d.dump" % (
21
- tb .tb_frame .f_code .co_filename , tb .tb_frame .f_lineno )
21
+ exc_tb .tb_frame .f_code .co_filename , exc_tb .tb_frame .f_lineno )
22
22
23
- fake_tb = FakeTraceback (tb )
23
+ fake_tb = FakeTraceback (exc_tb )
24
24
dumpling = {
25
25
"traceback" : fake_tb ,
26
26
"version" : __version__ ,
27
+ "exc_extra" : {
28
+ "exc_type" : exc_type ,
29
+ "exc_value" : exc_value ,
30
+ },
27
31
"dump_type" : "DILL"
28
32
}
29
33
with gzip .open (filename , "wb" ) as f :
You can’t perform that action at this time.
0 commit comments