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