[Libreoffice-commits] .: cppuhelper/inc
Stephan Bergmann
sbergmann at kemper.freedesktop.org
Thu Mar 22 05:48:57 PDT 2012
cppuhelper/inc/cppuhelper/implementationentry.hxx | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
New commits:
commit aacea7da465b6667e80d87a6c074e092a8908cf6
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Thu Mar 22 13:48:45 2012 +0100
Make SAL_CALL placement work with both MinGW and MSVC
diff --git a/cppuhelper/inc/cppuhelper/implementationentry.hxx b/cppuhelper/inc/cppuhelper/implementationentry.hxx
index 655ac2b..747ec7f 100644
--- a/cppuhelper/inc/cppuhelper/implementationentry.hxx
+++ b/cppuhelper/inc/cppuhelper/implementationentry.hxx
@@ -31,6 +31,14 @@
#include <cppuhelper/factory.hxx>
#include "cppuhelperdllapi.h"
+// MinGW wants it the one way around while MSVC wants it the other (and
+// everywhere else, SAL_CALL is empty, so doesn't matter):
+#if defined __GNUC__
+#define MY_FN_PTR(name) SAL_CALL (* name)
+#else
+#define MY_FN_PTR(name) (SAL_CALL * name)
+#endif
+
namespace cppu
{
/** One struct instance represents all data necessary for registering one service implementation.
@@ -45,17 +53,17 @@ struct ImplementationEntry
/** Function that returns the implementation-name of the implementation
(same as XServiceInfo.getImplementationName() ).
*/
- rtl::OUString SAL_CALL ( * getImplementationName )();
+ rtl::OUString MY_FN_PTR( getImplementationName )();
/** Function that returns all supported servicenames of the implementation
( same as XServiceInfo.getSupportedServiceNames() ).
*/
- com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL ( * getSupportedServiceNames ) ();
+ com::sun::star::uno::Sequence< rtl::OUString > MY_FN_PTR( getSupportedServiceNames ) ();
/** Function that creates a SingleComponentFactory.
*/
- ::com::sun::star::uno::Reference< ::com::sun::star::lang::XSingleComponentFactory > SAL_CALL
- ( * createFactory )(
+ ::com::sun::star::uno::Reference< ::com::sun::star::lang::XSingleComponentFactory >
+ MY_FN_PTR( createFactory )(
ComponentFactoryFunc fptr,
::rtl::OUString const & rImplementationName,
::com::sun::star::uno::Sequence< ::rtl::OUString > const & rServiceNames,
More information about the Libreoffice-commits
mailing list