diff options
Diffstat (limited to 'sigscript/MapWarpWrapper.cpp')
-rw-r--r-- | sigscript/MapWarpWrapper.cpp | 7 |
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) : |