summaryrefslogtreecommitdiffstats
path: root/sigscript/MapWarpWrapper.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'sigscript/MapWarpWrapper.cpp')
-rw-r--r--sigscript/MapWarpWrapper.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/sigscript/MapWarpWrapper.cpp b/sigscript/MapWarpWrapper.cpp
index d09646cf..63e3a53e 100644
--- a/sigscript/MapWarpWrapper.cpp
+++ b/sigscript/MapWarpWrapper.cpp
@@ -24,9 +24,10 @@
Sigscript::MapWarpWrapper* Sigscript::MapWarpWrapper::create(const Sigmod::MapWarp* warp, MapWrapper* parent)
{
- if (!m_instances.contains(Signature(parent, warp->id())))
- m_instances[Signature(parent, warp->id())] = new MapWarpWrapper(warp, parent);
- return qobject_cast<MapWarpWrapper*>(m_instances[Signature(parent, warp->id())]);
+ Signature sig = Signature(parent, Subsignature(warp->className(), warp->id()));
+ if (!m_instances.contains(sig))
+ m_instances[sig] = new MapWarpWrapper(warp, parent);
+ return qobject_cast<MapWarpWrapper*>(m_instances[sig]);
}
Sigscript::MapWarpWrapper::MapWarpWrapper(const Sigmod::MapWarp* warp, MapWrapper* parent) :