The client manager was busy registering client objects on the ConnectionManager thread rather than the dobj thread. Give it a nudge in the right direction.
Also, added logging to the PresentsDObjectMgr to check for this type of thing and dump stack if anyone is trying to register objects anywhere but the DObj thread (assuming we're sufficiently far started up that there is one). git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4832 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
@@ -199,6 +199,12 @@ public class PresentsDObjectMgr
|
||||
// from interface RootDObjectManager
|
||||
public <T extends DObject> T registerObject (T object)
|
||||
{
|
||||
if (_dobjThread != null && !isDispatchThread()) {
|
||||
log.warning("Registering DObject on non-dobject thread: " +
|
||||
"[class=" + object.getClass().getName() + "]");
|
||||
Thread.dumpStack();
|
||||
}
|
||||
|
||||
int oid = getNextOid();
|
||||
|
||||
// initialize this object
|
||||
|
||||
Reference in New Issue
Block a user