summaryrefslogtreecommitdiff
path: root/sc/source/ui/app/inputhdl.cxx
diff options
context:
space:
mode:
authorKohei Yoshida <kohei.yoshida@collabora.com>2014-02-14 12:28:03 -0500
committerCaolán McNamara <caolanm@redhat.com>2014-02-18 13:00:30 +0000
commitac6568e412821b4fc9c347cc1bb56ccd65311c27 (patch)
treee5b1f9b5ac55872542d001acc9210703246e2b1d /sc/source/ui/app/inputhdl.cxx
parentc30a06600a3b002c9eebb819c1b8dcee9d11abe0 (diff)
fdo#73773: Check if the *document* is closing, not the *app*.
Otherwise it would crash if the app has multiple document instances open and only one of them is being closed. (cherry picked from commit 76bdf523981d2bd983dac4e01bc5cc934118a73f) Conflicts: sc/source/ui/app/inputhdl.cxx Change-Id: Ib6e370037ab6097c9c6eff8035249663944b3a6c Reviewed-on: https://gerrit.libreoffice.org/8055 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'sc/source/ui/app/inputhdl.cxx')
-rw-r--r--sc/source/ui/app/inputhdl.cxx8
1 files changed, 7 insertions, 1 deletions
diff --git a/sc/source/ui/app/inputhdl.cxx b/sc/source/ui/app/inputhdl.cxx
index b31489c4db00..a45ac8f741c8 100644
--- a/sc/source/ui/app/inputhdl.cxx
+++ b/sc/source/ui/app/inputhdl.cxx
@@ -298,6 +298,11 @@ handle_r1c1:
}
}
+void ScInputHandler::SetDocumentDisposing( bool b )
+{
+ mbDocumentDisposing = b;
+}
+
static void lcl_Replace( EditView* pView, const String& rNewStr, const ESelection& rOldSel )
{
if ( pView )
@@ -519,6 +524,7 @@ ScInputHandler::ScInputHandler()
bProtected( false ),
bCellHasPercentFormat( false ),
bLastIsSymbol( false ),
+ mbDocumentDisposing(false),
nValidation( 0 ),
eAttrAdjust( SVX_HOR_JUSTIFY_STANDARD ),
aScaleX( 1,1 ),
@@ -542,7 +548,7 @@ ScInputHandler::~ScInputHandler()
// Wenn dies der Applikations-InputHandler ist, wird der dtor erst nach SfxApplication::Main
// gerufen, darf sich also auf keine Sfx-Funktionen mehr verlassen
- if ( !SFX_APP()->IsDowning() ) // inplace
+ if (!mbDocumentDisposing) // inplace
EnterHandler(); // Eingabe noch abschliessen
if (SC_MOD()->GetRefInputHdl()==this)