diff options
author | Eike Rathke <erack@redhat.com> | 2017-07-06 17:06:14 +0200 |
---|---|---|
committer | Eike Rathke <erack@redhat.com> | 2017-07-06 17:06:42 +0200 |
commit | d5020f35aec54f0241fa58557dc6caadc149f5a9 (patch) | |
tree | b2a9ba28dc95112fd38e99cdc9df591a18ab4fba /sc | |
parent | a9efcef2c586b50ae36b20b34fa2b0fe21af0d8a (diff) |
Attempt to blind fix tdf#108612 explicitly checking for clipboard document
It seems that for some yet unknown reason in an (un)certain constellation
ScDocument::IsClipboardSource() returns true because ScModule::GetClipDoc()
does not return the clipboard document but the actual document instead, so
destroying the clipboard document executes ScDocument::ClosingClipboardSource()
and (or in earlier versions) ScDocument::ForgetNoteCaptions() on the actual
document instead.
Check also that ScDocument::bIsClip is set, hopefully curing the symptom, the
real cause is something else.
Change-Id: I5ffd0706592d2737808e7004630a56c53115295b
Diffstat (limited to 'sc')
-rw-r--r-- | sc/source/core/data/document.cxx | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sc/source/core/data/document.cxx b/sc/source/core/data/document.cxx index c78e1db3acf9..93e75ed8e4c1 100644 --- a/sc/source/core/data/document.cxx +++ b/sc/source/core/data/document.cxx @@ -2543,7 +2543,7 @@ void ScDocument::SetClipParam(const ScClipParam& rParam) bool ScDocument::IsClipboardSource() const { ScDocument* pClipDoc = ScModule::GetClipDoc(); - return xPoolHelper.is() && pClipDoc && pClipDoc->xPoolHelper.is() && + return pClipDoc && pClipDoc->bIsClip && pClipDoc->xPoolHelper.is() && xPoolHelper.is() && xPoolHelper->GetDocPool() == pClipDoc->xPoolHelper->GetDocPool(); } |