Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def thread_handler(self, loop, source_task, exc_info, func, *args, **kwargs): """ Wraps the sync application with exception handling. """ # Set the threadlocal for AsyncToSync self.threadlocal.main_event_loop = loop # Set the task mapping (used for the locals module) current_thread = threading.current_thread() if AsyncToSync.launch_map.get(source_task) == current_thread: # Our parent task was launched from this same thread, so don't make # a launch map entry - let it shortcut over us! (and stop infinite loops) parent_set = False else: self.launch_map[current_thread] = source_task parent_set = True # Run the function try: # If we have an exception, run the function inside the except block # after raising it so exc_info is correctly populated. if exc_info: try: raise exc_info except: return func(*args, **kwargs) else: