diff --git a/share/qtcreator/dumper/dumper.py b/share/qtcreator/dumper/dumper.py
index 3336e458b86debe2980c3ccbf3ff2cd7ecc1b11e..2258088f607f3cf05a747ed60571598fd0532e10 100644
--- a/share/qtcreator/dumper/dumper.py
+++ b/share/qtcreator/dumper/dumper.py
@@ -1691,7 +1691,10 @@ class Dumper:
             #warn(" STRIPPED: %s" % nsStrippedType)
             #warn(" DUMPERS: %s" % (nsStrippedType in qqDumpers))
             if nsStrippedType in qqDumpers:
-                qqDumpers[nsStrippedType](self, expensiveUpcast(value))
+                if tryDynamic:
+                    qqDumpers[nsStrippedType](self, expensiveUpcast(value))
+                else:
+                    qqDumpers[nsStrippedType](self, value)
                 return
 
             # Is this derived from QObject?