summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorJan-Marek Glogowski <glogow@fbihome.de>2016-01-08 18:22:04 +0100
committerJan-Marek Glogowski <glogow@fbihome.de>2016-03-24 22:40:41 +0100
commitd97029895b3e3e6299e759e52629c04b1eac217f (patch)
treeef5efa7bba4e61bb7f920a18ddd566569f39cd11 /sw
parente637b6743a506ef74c93ccbe15ab6642f3baa34f (diff)
MM: abort email MM without an email DB column
Change-Id: Ia35a64d08f47af577426749712fa37c3b3b0b6e6
Diffstat (limited to 'sw')
-rw-r--r--sw/source/uibase/dbui/dbmgr.cxx47
1 files changed, 26 insertions, 21 deletions
diff --git a/sw/source/uibase/dbui/dbmgr.cxx b/sw/source/uibase/dbui/dbmgr.cxx
index 0751476d3687..8331a44637d1 100644
--- a/sw/source/uibase/dbui/dbmgr.cxx
+++ b/sw/source/uibase/dbui/dbmgr.cxx
@@ -952,12 +952,6 @@ bool SwDBManager::MergeMailFiles(SwWrtShell* pSourceShell,
const bool bNeedsTempFiles = ( bMT_EMAIL || bMT_FILE );
const bool bCreateSingleFile = rMergeDescriptor.bCreateSingleFile;
- ::rtl::Reference< MailDispatcher > xMailDispatcher;
- OUString sMailBodyMimeType;
- rtl_TextEncoding sMailEncoding = ::osl_getThreadTextEncoding();
-
- bool bNoError = true;
-
// Setup for dumping debugging documents
static const char *sMaxDumpDocs = nullptr;
static sal_Int32 nMaxDumpDocs = 0;
@@ -970,27 +964,23 @@ bool SwDBManager::MergeMailFiles(SwWrtShell* pSourceShell,
nMaxDumpDocs = rtl_ustr_toInt32(reinterpret_cast<const sal_Unicode*>( sMaxDumpDocs ), 10);
}
- if( bMT_EMAIL )
- {
- xMailDispatcher.set( new MailDispatcher(rMergeDescriptor.xSmtpServer));
- if(!rMergeDescriptor.bSendAsAttachment && rMergeDescriptor.bSendAsHTML)
- {
- sMailBodyMimeType = "text/html; charset=";
- sMailBodyMimeType += OUString::createFromAscii(
- rtl_getBestMimeCharsetFromTextEncoding( sMailEncoding ));
- SvxHtmlOptions& rHtmlOptions = SvxHtmlOptions::Get();
- sMailEncoding = rHtmlOptions.GetTextEncoding();
- }
- else
- sMailBodyMimeType = "text/plain; charset=UTF-8; format=flowed";
- }
+ ::rtl::Reference< MailDispatcher > xMailDispatcher;
+ OUString sMailBodyMimeType;
+ rtl_TextEncoding sMailEncoding = ::osl_getThreadTextEncoding();
+
+ bool bNoError = true;
uno::Reference< beans::XPropertySet > xColumnProp;
{
// Check for (mandatory) email or (optional) filename column
SwDBFormatData aColumnDBFormat;
bool bColumnName = !rMergeDescriptor.sDBcolumn.isEmpty();
- if( bColumnName )
+ if( ! bColumnName )
+ {
+ if( bMT_EMAIL )
+ return false;
+ }
+ else
{
uno::Reference< sdbcx::XColumnsSupplier > xColsSupp( pImpl->pMergeData->xResultSet, uno::UNO_QUERY );
uno::Reference<container::XNameAccess> xCols = xColsSupp->getColumns();
@@ -1001,6 +991,21 @@ bool SwDBManager::MergeMailFiles(SwWrtShell* pSourceShell,
aColumnDBFormat.xFormatter = pImpl->pMergeData->xFormatter;
aColumnDBFormat.aNullDate = pImpl->pMergeData->aNullDate;
+
+ if( bMT_EMAIL )
+ {
+ xMailDispatcher.set( new MailDispatcher(rMergeDescriptor.xSmtpServer));
+ if(!rMergeDescriptor.bSendAsAttachment && rMergeDescriptor.bSendAsHTML)
+ {
+ sMailBodyMimeType = "text/html; charset=";
+ sMailBodyMimeType += OUString::createFromAscii(
+ rtl_getBestMimeCharsetFromTextEncoding( sMailEncoding ));
+ SvxHtmlOptions& rHtmlOptions = SvxHtmlOptions::Get();
+ sMailEncoding = rHtmlOptions.GetTextEncoding();
+ }
+ else
+ sMailBodyMimeType = "text/plain; charset=UTF-8; format=flowed";
+ }
}
// Try saving the source document