summaryrefslogtreecommitdiff
path: root/include/ucbhelper
diff options
context:
space:
mode:
authorNoel Grandin <noel@peralex.com>2018-06-03 13:07:55 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2018-06-06 08:55:02 +0200
commit9739c37d8ad7c6fca269709674a6975fa7ebd191 (patch)
treefae0bf0830d41d66017815ff6a665610d2c65a8a /include/ucbhelper
parenta96a260a5fd6303eeebb26aee4be24ddf88391d1 (diff)
enable incremental linking on windows
requires a handful of workarounds Change-Id: I77c25580135eeec437716eceea1412607f8d14ca Reviewed-on: https://gerrit.libreoffice.org/55244 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'include/ucbhelper')
-rw-r--r--include/ucbhelper/activedatasink.hxx7
-rw-r--r--include/ucbhelper/commandenvironment.hxx6
2 files changed, 8 insertions, 5 deletions
diff --git a/include/ucbhelper/activedatasink.hxx b/include/ucbhelper/activedatasink.hxx
index 4cdc69a2b2c7..7e2cbcc8274c 100644
--- a/include/ucbhelper/activedatasink.hxx
+++ b/include/ucbhelper/activedatasink.hxx
@@ -27,14 +27,15 @@
namespace ucbhelper
{
+// workaround for incremental linking bugs in MSVC2015
+class SAL_DLLPUBLIC_TEMPLATE ActiveDataSink_Base : public cppu::WeakImplHelper< css::io::XActiveDataSink > {};
+
/**
* This class implements the interface css::io::XActiveDataSink.
* Instances of this class can be passed with the parameters of an
* "open" command.
*/
-
-class UCBHELPER_DLLPUBLIC ActiveDataSink :
- public cppu::WeakImplHelper< css::io::XActiveDataSink >
+class UCBHELPER_DLLPUBLIC ActiveDataSink : public ActiveDataSink_Base
{
css::uno::Reference< css::io::XInputStream > m_xStream;
diff --git a/include/ucbhelper/commandenvironment.hxx b/include/ucbhelper/commandenvironment.hxx
index 919f49ca3a3a..1819d8328b5b 100644
--- a/include/ucbhelper/commandenvironment.hxx
+++ b/include/ucbhelper/commandenvironment.hxx
@@ -29,13 +29,15 @@ namespace ucbhelper
{
struct CommandEnvironment_Impl;
+// workaround for incremental linking bugs in MSVC2015
+class SAL_DLLPUBLIC_TEMPLATE CommandEnvironment_Base : public cppu::WeakImplHelper< css::ucb::XCommandEnvironment > {};
+
/**
* This class implements the interface
* css::ucb::XCommandEnvironment. Instances of this class can
* be used to supply environments to commands executed by UCB contents.
*/
-class UCBHELPER_DLLPUBLIC CommandEnvironment :
- public cppu::WeakImplHelper< css::ucb::XCommandEnvironment >
+class UCBHELPER_DLLPUBLIC CommandEnvironment : public CommandEnvironment_Base
{
std::unique_ptr<CommandEnvironment_Impl> m_pImpl;