summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sd/source/ui/app/sdmod.cxx5
-rw-r--r--sd/source/ui/app/sdxfer.cxx3
2 files changed, 8 insertions, 0 deletions
diff --git a/sd/source/ui/app/sdmod.cxx b/sd/source/ui/app/sdmod.cxx
index 45ff6cf52d7e..f7e74a481740 100644
--- a/sd/source/ui/app/sdmod.cxx
+++ b/sd/source/ui/app/sdmod.cxx
@@ -131,6 +131,11 @@ SdModule::SdModule(SfxObjectFactory* pFact1, SfxObjectFactory* pFact2 )
SdModule::~SdModule()
{
+ // Mark the module in the global AppData structure as deleted.
+ SdModule** ppShellPointer = (SdModule**)GetAppData(SHL_DRAW);
+ if (ppShellPointer != NULL)
+ (*ppShellPointer) = NULL;
+
delete pSearchItem;
if( pNumberFormatter )
diff --git a/sd/source/ui/app/sdxfer.cxx b/sd/source/ui/app/sdxfer.cxx
index 54a0ba111927..f22af4ad2887 100644
--- a/sd/source/ui/app/sdxfer.cxx
+++ b/sd/source/ui/app/sdxfer.cxx
@@ -481,6 +481,9 @@ void SdTransferable::AddSupportedFormats()
sal_Bool SdTransferable::GetData( const DataFlavor& rFlavor )
{
+ if (SD_MOD()==NULL)
+ return sal_False;
+
sal_uInt32 nFormat = SotExchange::GetFormat( rFlavor );
sal_Bool bOK = sal_False;