Core/Vehicles: Prevent bad database data in vehicle_template from crashing the server when vehicle despawns

Port From (https://github.com/TrinityCore/TrinityCore/commit/187e74ac722747192d4a26508c58c857221a6703)
This commit is contained in:
Hondacrx
2025-09-01 16:57:21 -04:00
parent e1adc77447
commit 6fd46762fc
+8
View File
@@ -11408,6 +11408,14 @@ namespace Game
vehicleTemplate.DespawnDelay = TimeSpan.FromMilliseconds(result.Read<int>(1));
vehicleTemplate.CustomFlags = (VehicleCustomFlags)result.Read<int>(3);
if (vehicleTemplate.DespawnDelay < TimeSpan.Zero)
{
Log.outError(LogFilter.Sql, $"Table `vehicle_template`: Creature (Entry: {creatureId}) has negative despawnDelayMs ({vehicleTemplate.DespawnDelay}).`. Ignoring");
vehicleTemplate.DespawnDelay = TimeSpan.FromMilliseconds(1);
}
else if (vehicleTemplate.DespawnDelay == TimeSpan.Zero)
vehicleTemplate.DespawnDelay = TimeSpan.FromMilliseconds(1);
if (!result.IsNull(2))
{
var vehicle = CliDB.VehicleStorage.LookupByKey(creatureInfo.VehicleId);