aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2011-01-28 15:05:46 +0100
committerShauren <shauren.trinity@gmail.com>2011-01-28 15:05:46 +0100
commit3f0d888b0e1a2c25a0ee4e0d17d31a1c0e4e0bf7 (patch)
tree00419514bbed799764b6139353deab27060f559c /src
parent3f16b58ddbdf83a0c97b7d0316c2423b991b55d0 (diff)
Core/Instances: Fixed cleaning and packing query for account_instance_times table (instance can no longer exist but player limit is still there)
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/game/Instances/InstanceSaveMgr.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/server/game/Instances/InstanceSaveMgr.cpp b/src/server/game/Instances/InstanceSaveMgr.cpp
index 629d0ab7795..4c2f8117ba7 100755
--- a/src/server/game/Instances/InstanceSaveMgr.cpp
+++ b/src/server/game/Instances/InstanceSaveMgr.cpp
@@ -278,7 +278,7 @@ void InstanceSaveManager::CleanupAndPackInstances()
CharacterDatabase.DirectExecute("ALTER TABLE instance ADD newid INT UNSIGNED AUTO_INCREMENT, ADD INDEX(newid)");
// Update old ids
- CharacterDatabase.DirectExecute("UPDATE account_instance_times AS tmp LEFT JOIN instance ON tmp.instanceId = instance.id SET tmp.instanceId = instance.newid WHERE tmp.instanceId > 0");
+ CharacterDatabase.DirectExecute("UPDATE account_instance_times AS tmp LEFT JOIN instance ON tmp.instanceId = instance.id SET tmp.instanceId = instance.newid WHERE tmp.instanceId > 0 AND instance.newid IS NOT NULL"); // can be null and must not be cleaned! its an "already reset" but still limited case
CharacterDatabase.DirectExecute("UPDATE corpse AS tmp LEFT JOIN instance ON tmp.instance = instance.id SET tmp.instance = instance.newid WHERE tmp.instance > 0");
CharacterDatabase.DirectExecute("UPDATE character_instance AS tmp LEFT JOIN instance ON tmp.instance = instance.id SET tmp.instance = instance.newid WHERE tmp.instance > 0");
CharacterDatabase.DirectExecute("UPDATE group_instance AS tmp LEFT JOIN instance ON tmp.instance = instance.id SET tmp.instance = instance.newid WHERE tmp.instance > 0");