summaryrefslogtreecommitdiff
path: root/solenv/gdb
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2013-01-31 23:44:36 +0100
committerMichael Stahl <mstahl@redhat.com>2013-01-31 23:47:37 +0100
commit027bb41aa16793e88e9fc1b3550c8c8933636472 (patch)
treee2dfc0087d8bf29e64cad951257762306d41624e /solenv/gdb
parentb5592cb22dfa473ce5683f95118287f2bde63c13 (diff)
gdb: UnoReferencePrinter: prevent ambiguity problems
gdb 7.5.1 complains about ambiguous base class "XInterface" with cast() so try dynamic_cast() instead. Change-Id: I99a21eea7251e663deee395f6a13ca0ed041e8c9
Diffstat (limited to 'solenv/gdb')
-rw-r--r--solenv/gdb/libreoffice/cppu.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/solenv/gdb/libreoffice/cppu.py b/solenv/gdb/libreoffice/cppu.py
index 8db684a74eca..31f1da60f568 100644
--- a/solenv/gdb/libreoffice/cppu.py
+++ b/solenv/gdb/libreoffice/cppu.py
@@ -63,7 +63,9 @@ class UnoReferencePrinter(object):
def to_string(self):
iface = self.value['_pInterface']
if iface:
- impl = iface.cast(self._itype()).dereference()
+ # dynamic_cast hopefully avoids this problem:
+ # base class 'com::sun::star::uno::XInterface' is ambiguous
+ impl = iface.dynamic_cast(self._itype()).dereference()
return '%s to %s' % (self.typename, str(impl))
else:
return "empty %s" % self.typename