From a581e394b4a2f3e71ce45ec6fd397d1b7997b7ea Mon Sep 17 00:00:00 2001 From: elsid Date: Sun, 28 May 2023 12:35:38 +0200 Subject: [PATCH] Check for revision inequality It's not possible to have SafePtr with mLastUpdate from the future. But theoretically it's possible to get PtrRegistry::mRevision overflow so operator less would return false when there is a change. --- apps/openmw/mwworld/ptr.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/openmw/mwworld/ptr.cpp b/apps/openmw/mwworld/ptr.cpp index 5570856132..2a64507348 100644 --- a/apps/openmw/mwworld/ptr.cpp +++ b/apps/openmw/mwworld/ptr.cpp @@ -40,7 +40,7 @@ namespace MWWorld void SafePtr::update() const { const PtrRegistry& registry = MWBase::Environment::get().getWorldModel()->getPtrRegistry(); - if (mLastUpdate < registry.getRevision()) + if (mLastUpdate != registry.getRevision()) { mPtr = registry.getOrDefault(mId); mLastUpdate = registry.getRevision();