@@ -88,22 +88,19 @@ def _recreate_cm(self):
8888 return self
8989
9090 def __call__ (self , func ):
91- get_instrumenter ().unregister ()
92- try :
91+ with disable ():
9392 self .func = func
9493
9594 @functools .wraps (func )
9695 def inner (* args , ** kwds ):
9796 with self ._recreate_cm ():
9897 return func (* args , ** kwds )
99- finally :
100- get_instrumenter ().register ()
10198 return inner
10299
103100 def __enter__ (self ):
104101 self .tracer_registered = get_instrumenter ().get_registered ()
105102 if not self .tracer_registered :
106- if self .region_name :
103+ if self .user_region_name :
107104 self .module_name = "user_instrumenter"
108105 frame = inspect .currentframe ().f_back
109106 file_name = frame .f_globals .get ('__file__' , None )
@@ -130,16 +127,16 @@ def __enter__(self):
130127 else :
131128 full_file_name = "None"
132129
133- scorep . instrumenter . get_instrumenter ().region_begin (
130+ get_instrumenter ().region_begin (
134131 self .module_name , self .region_name , full_file_name , line_number , self .code_obj )
135132
136133 get_instrumenter ().register ()
137134
138- def __exit__ (self , exc_type , exc_value , traceback ):
135+ def __exit__ (self , exc_type = None , exc_value = None , traceback = None ):
139136 if not self .tracer_registered :
140137 get_instrumenter ().unregister ()
141138
142- if self .region_name is not None :
139+ if self .user_region_name :
143140 get_instrumenter ().region_end (
144141 self .module_name , self .region_name )
145142 elif callable (self .func ):
@@ -171,7 +168,7 @@ def _recreate_cm(self):
171168 return self
172169
173170 def __call__ (self , func ):
174- get_instrumenter (). unregister ()
171+ self . __enter__ ()
175172 try :
176173 self .func = func
177174
@@ -180,15 +177,15 @@ def inner(*args, **kwds):
180177 with self ._recreate_cm ():
181178 return func (* args , ** kwds )
182179 finally :
183- get_instrumenter (). register ()
180+ self . __exit__ ()
184181 return inner
185182
186183 def __enter__ (self ):
187184 self .tracer_registered = get_instrumenter ().get_registered ()
188185 if self .tracer_registered :
189186 get_instrumenter ().unregister ()
190187
191- if self .region_name is not None :
188+ if self .user_region_name :
192189 self .module_name = "user_instrumenter"
193190 frame = inspect .currentframe ().f_back
194191 file_name = frame .f_globals .get ('__file__' , None )
@@ -214,12 +211,12 @@ def __enter__(self):
214211 else :
215212 full_file_name = "None"
216213
217- scorep . instrumenter . get_instrumenter ().region_begin (
214+ get_instrumenter ().region_begin (
218215 self .module_name , self .region_name , full_file_name , line_number , self .code_obj )
219216
220- def __exit__ (self , exc_type , exc_value , traceback ):
217+ def __exit__ (self , exc_type = None , exc_value = None , traceback = None ):
221218 if self .tracer_registered :
222- if self .region_name is not None :
219+ if self .user_region_name :
223220 get_instrumenter ().region_end (
224221 self .module_name , self .region_name )
225222 elif callable (self .func ):
0 commit comments