diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2017-09-22 08:59:14 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2017-09-22 13:38:19 +0200 |
commit | 6d1c8a43586503e703baebabc5330a1898f7ec43 (patch) | |
tree | 9cdcc90534c0466025bb7bedcc0a254ced0359c3 /winaccessibility | |
parent | caea6281967bacd38a9296e6acefe9e5baefc3a4 (diff) |
Avoid VCL_DLLPUBLIC SolarMutexGuard "taking over" template base class on MSVC
...and thus exporting osl::Guard<comphelper::SolarMutex> members from vcl. With
--disable-pch that caused linking Library_acc to fail with duplicate symbols, as
accessibility/source/standard/vclxaccessiblebutton.cxx uses
comphelper::OExternalLockGuard (include/comphelper/accessiblecontexthelper.hxx),
which also derives from osl::Guard<comphelper::SolarMutex> (and is also all-
inline, and not marked as DLLPUBLIC), so also emits such members. With
--enable-pch, vclxaccessiblebutton.cxx happens to see SolarMutexGuard from
include/vcl/svapp.hxx before comphelper::OExternalLockGuard, and thus doesn't
emit any such members.
As SolarMutexGuard is all-inline, there should not be much point in making it
VCL_DLLPUBLIC in the first place (was there ever since the class's introduction
in b450a32890184a18ed176dbf717e944190cbe643 "create a class SolarMutexGuard to
take a Guard on the SolarMutex"), so just drop that.
Change-Id: Ie9d493370c7d34981bb35e5d9e100cf987eb83ca
Reviewed-on: https://gerrit.libreoffice.org/42616
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'winaccessibility')
-rw-r--r-- | winaccessibility/Library_uacccom.mk | 1 | ||||
-rw-r--r-- | winaccessibility/Library_winaccessibility.mk | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/winaccessibility/Library_uacccom.mk b/winaccessibility/Library_uacccom.mk index f48dfecf2688..24e125d42679 100644 --- a/winaccessibility/Library_uacccom.mk +++ b/winaccessibility/Library_uacccom.mk @@ -56,6 +56,7 @@ $(eval $(call gb_Library_add_ldflags,UAccCOM,\ $(eval $(call gb_Library_use_libraries,UAccCOM,\ vcl \ + comphelper \ cppu \ sal \ )) diff --git a/winaccessibility/Library_winaccessibility.mk b/winaccessibility/Library_winaccessibility.mk index 1eb14246294c..9466fa47925b 100644 --- a/winaccessibility/Library_winaccessibility.mk +++ b/winaccessibility/Library_winaccessibility.mk @@ -52,6 +52,7 @@ $(eval $(call gb_Library_use_externals,winaccessibility,\ $(eval $(call gb_Library_use_libraries,winaccessibility,\ UAccCOM \ + comphelper \ cppu \ cppuhelper \ vcl \ |