/std/user/user.c clone not dested for users relogging in after link-dead
Bug #187196 reported by
Richard Thomas Harrison
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Sapidlib |
Fix Committed
|
Medium
|
Unassigned |
Bug Description
When a user goes link-dead, if they re-connect before being automatically dested then a second clone of /std/user/user.c is made pointing to the original body. This leaves 2 clones of /std/user/user.c both pointing to the same mobile body.
If this happens again then another clone is made leading to multiple clones of /std/user/user.c all pointing to one mobile body.
Possible fix: A cleanup object that runs every-so-often to destruct orphan clones.
Related branches
description: | updated |
Changed in sapidlib: | |
importance: | Undecided → Medium |
Changed in sapidlib: | |
status: | New → Fix Committed |
To post a comment you must log in.
My recommended solution would be to simply to either:
a) Destroy the old user (aka connection) object on reconnect; or
b) Reuse the old user (aka connection) object.
However, some sort of cleanup system wouldn't hurt either but is more of a new feature (*cough*spec it*cough*) than a solution to this bug.