Kaynağa Gözat

bug reassigning a new handler to an old CollisionNode

David Rose 24 yıl önce
ebeveyn
işleme
ce302d87d7
1 değiştirilmiş dosya ile 1 ekleme ve 1 silme
  1. 1 1
      panda/src/collide/collisionTraverser.cxx

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

@@ -82,10 +82,10 @@ add_collider(CollisionNode *node, CollisionHandler *handler) {
     // We already knew about this collider.
     // We already knew about this collider.
     if ((*ci).second != handler) {
     if ((*ci).second != handler) {
       // Change the handler.
       // Change the handler.
+      PT(CollisionHandler) old_handler = (*ci).second;
       (*ci).second = handler;
       (*ci).second = handler;
 
 
       // Now update our own reference counts within our handler set.
       // Now update our own reference counts within our handler set.
-      CollisionHandler *old_handler = (*ci).second;
       Handlers::iterator hi = _handlers.find(old_handler);
       Handlers::iterator hi = _handlers.find(old_handler);
       nassertv(hi != _handlers.end());
       nassertv(hi != _handlers.end());
       (*hi).second--;
       (*hi).second--;