summaryrefslogtreecommitdiff
path: root/solenv
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2014-08-19 15:48:31 +0200
committerAndras Timar <andras.timar@collabora.com>2014-08-21 21:24:51 +0200
commitae8fa3021814f81a08c9f5aadd2c57519400192e (patch)
tree344df88b6a0867cea5b9d8bdedb183dee6ab2769 /solenv
parentef639c610a201b4c383eaea1e83e17aa221ef6f9 (diff)
gdb: print the SwNodeIndex properly if there are multiple blocks
Change-Id: I178d365e71ef3377b1a2cfc115bb297640161efe (cherry picked from commit 4f211a0d0c4ef0c248fd3d4493994c1a122c2eb9) Reviewed-on: https://gerrit.libreoffice.org/11047 Reviewed-by: David Tardon <dtardon@redhat.com> Tested-by: David Tardon <dtardon@redhat.com>
Diffstat (limited to 'solenv')
-rw-r--r--solenv/gdb/libreoffice/sw.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/solenv/gdb/libreoffice/sw.py b/solenv/gdb/libreoffice/sw.py
index 515718e9ae2e..97cba136b937 100644
--- a/solenv/gdb/libreoffice/sw.py
+++ b/solenv/gdb/libreoffice/sw.py
@@ -19,8 +19,10 @@ class SwPositionPrinter(object):
def to_string(self):
node = self.value['nNode']['pNd'].dereference();
+ block = node['pBlock'].dereference();
+ nodeindex = block['nStart'] + node['nOffset']
offset = self.value['nContent']['m_nIndex']
- return "%s (node %d, offset %d)" % (self.typename, node['nOffset'], offset)
+ return "%s (node %d, offset %d)" % (self.typename, nodeindex, offset)
class SwNodeIndexPrinter(object):
'''Prints SwNodeIndex.'''
@@ -31,7 +33,9 @@ class SwNodeIndexPrinter(object):
def to_string(self):
node = self.value['pNd'].dereference();
- return "%s (node %d)" % (self.typename, node['nOffset'])
+ block = node['pBlock'].dereference();
+ nodeindex = block['nStart'] + node['nOffset']
+ return "%s (node %d)" % (self.typename, nodeindex)
class SwIndexPrinter(object):
'''Prints SwIndex.'''