Browse Source

collide: Release GIL while during CollisionTraverser traversal

This is necessary to prevent deadlocking on the GIL if some Python code is trying to write some geometry while the CollisionTraverser is trying to read it.

Fixes #1033
rdb 5 years ago
parent
commit
8c3fd5b406
1 changed files with 1 additions and 1 deletions
  1. 1 1
      panda/src/collide/collisionTraverser.h

+ 1 - 1
panda/src/collide/collisionTraverser.h

@@ -64,7 +64,7 @@ PUBLISHED:
   void clear_colliders();
   MAKE_SEQ_PROPERTY(colliders, get_num_colliders, get_collider);
 
-  void traverse(const NodePath &root);
+  BLOCKING void traverse(const NodePath &root);
 
 #if defined(DO_COLLISION_RECORDING) || !defined(CPPPARSER)
   void set_recorder(CollisionRecorder *recorder);