summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2012-07-05 21:37:49 +0100
committerCaolán McNamara <caolanm@redhat.com>2012-07-05 21:39:45 +0100
commit7e3923520c27ff139bc3abab35a1c01e1a785fb1 (patch)
treef909499ee78e0f1a2cc9d06ed7832239d7f62343
parent5218c0d6a8171400bee0d972ff05757849df4d19 (diff)
Resolves: fdo#49587 apparent loop in style hierarchy
Change-Id: I32317a1a6500377f7e7bb98d1dcc65ad86feb9a2
-rw-r--r--writerfilter/source/dmapper/DomainMapper_Impl.cxx9
1 files changed, 8 insertions, 1 deletions
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
index 5c33f7b516a7..a69e9115e4db 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
@@ -561,7 +561,14 @@ uno::Any DomainMapper_Impl::GetPropertyFromStyleSheet(PropertyIds eId)
}
}
//search until the property is set or no parent is available
- pEntry = GetStyleSheetTable()->FindParentStyleSheet(pEntry->sBaseStyleIdentifier);
+ StyleSheetEntryPtr pNewEntry = GetStyleSheetTable()->FindParentStyleSheet(pEntry->sBaseStyleIdentifier);
+
+ SAL_WARN_IF( pEntry == pNewEntry, "writerfilter", "circular loop in style hierarchy?");
+
+ if (pEntry == pNewEntry) //fdo#49587
+ break;
+
+ pEntry = pNewEntry;
}
return uno::Any();
}