diff options
author | Oliver Bolte <obo@openoffice.org> | 2009-03-20 10:32:11 +0000 |
---|---|---|
committer | Oliver Bolte <obo@openoffice.org> | 2009-03-20 10:32:11 +0000 |
commit | 4cc3ad7394d4cea523c978b14834e08ae39d2183 (patch) | |
tree | fb9ae8f4ab23b2cb653868fe662cfd513100d6d7 /sfx2 | |
parent | 598680d51c357c9fb7a05d4e197dd8e50f12c924 (diff) |
CWS-TOOLING: integrate CWS ooo31gsl5
2009-03-12 11:47:20 +0100 cd r269379 : #i100110# Reset deleted flag in Execute_Impl to prevent dtor to write to stack
2009-03-11 18:03:43 +0100 pl r269346 : #i100116# fix accept focus behavior of tool windows (thanks cmc)
Diffstat (limited to 'sfx2')
-rw-r--r-- | sfx2/source/dialog/templdlg.cxx | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sfx2/source/dialog/templdlg.cxx b/sfx2/source/dialog/templdlg.cxx index df4b45db01..df4b8bfecb 100644 --- a/sfx2/source/dialog/templdlg.cxx +++ b/sfx2/source/dialog/templdlg.cxx @@ -1731,6 +1731,7 @@ BOOL SfxCommonTemplateDialog_Impl::Execute_Impl( nId, SFX_CALLMODE_SYNCHRON | SFX_CALLMODE_RECORD | SFX_CALLMODE_MODAL, pItems, nModi ); + // FIXME: Dialog can be destroyed while in Execute() check stack variable for dtor flag! if ( !pItem || aDeleted() ) return FALSE; @@ -1753,6 +1754,11 @@ BOOL SfxCommonTemplateDialog_Impl::Execute_Impl( *pIdx = i; } } + + // Reset destroyed flag otherwise we use the pointer in the dtor + // where the local stack object is already destroyed. This would + // overwrite objects on the stack!! See #i100110 + pbDeleted = NULL; return TRUE; } |