Age | Commit message (Collapse) | Author |
|
...instead of static WeakReference and getGlobalMutex. The latter allowed for
deadlock, when one thread is in __getTypeEntries
(cppuhelper/source/implbase_ex.cxx), having locked getImplHelperInitMutex(), and
from there calls some cppu_detail_getUnoType (from a cppumaker-generated header)
that tries to lock getGloblaMutex, while another thread is in this
FactoryImpl_create, having locked getGlobalMutex, and from there calls into
__getTypeEntries.
Change-Id: Iac68d28c1a5971049447cc79384b6e186f2a6d82
|
|
Change-Id: I2aeba0342e46c3a4bd50f49b8a43ebb125269dfa
|
|
Change-Id: I962aeac0c7feeabb7963016d5afcfeca5a48ccfe
|
|
Change-Id: I50f0887ceb4517d7ef234f970ca2ba679d533382
|
|
...that no longer uses XSimpleRegistry structures for the service data and thus
is potentially more performant.
* Registry-based functions from cppuhelper/bootstrap are deprecated now, client
code should always use defaultBootstrap_InitialComponentContext.
* References to the obsolete UNO_WRITERDB have been removed.
* Some of the functions in cppuhelper/source that are used from multiple .cxx
but had not been properly placed into .hxx have been cleaned up.
* css.lang.ServiceManager XSet insert/remove now support special
sequence<NamedValue> to improve live deployment/removal of XML-based extension
components data.
* 09524d410bbaad2a0b9b39811cb5cc16621b1396 "stoc: accelerate opening of multiple
XML .rdb files in a directory" and its follow-up
cb5c881a7f179391ee853f76e159254c97d776a3 "avoid using the new rdb reading
logic for empty/non-existent directories" have been obsoleted by this change
and have been reverted again.
|
|
...not just OServiceManager. (This is a prerequisite to replace the
defaultBootstrap_initialComponentContext() implementation with a more performant
component context/service manager combo.)
The only reason for the restriction to OServiceManager apparently was the
additional createContentEnumeration overload with an XComponentContext
parameter. It /looks/ to me like this is not really necessary, that it should
always be OK to instantiate implementation factories with this service manager
and its component context, instead of a component context (and its default
service manager) passed into a method call. This would mean that the code could
be simplified further, needing a component context passed into a method only to
pass along to a new instance created via
createInstanceWith[ArgumentsAnd]Context, but then again I'm not 100% sure and
better leave it at that...
This also means that XUnoTunnel is gone from OServiceManager and XInitialization
is gone from OServiceManagerWrapper.
|
|
|
|
|
|
Instead of nesting these, we aggregate them into a single non-nested
registry, which saves lots of CPU at startup, sadly we can only do
that for the new-style XML registries, so we have to sniff files,
nevertheless this is still far faster. The merged xml files also
break the XSimpleRegistry::getURL() method - but it appears not
to get called.
|
|
|
|
|
|
Pattern used:
find . -name "*.cxx" -exec sed -i 's/\( *\)\(else if\|if\) *( *\([^!()|&]*\)\.equalsAsciiL( *RTL_CONSTASCII_STRINGPARAM *( *\([^)]*\)) *) *) *{$/\1\2 ( \3 == \4 ) {/' \{\} \;
|
|
Pattern used:
find . -name "*.cxx" -exec sed -i 's/\( *\)\(else if\|if\) *( *\([^!()|&]*\)\.equalsAsciiL( *RTL_CONSTASCII_STRINGPARAM *( *\([^)]*\)) *) *)$/\1\2 ( \3 == \4 )/' \{\} \;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
in scripting / sdext / starmath / stoc / svtools / svx
|
|
|
|
|
|
|
|
|
|
|
|
SAL_UNUSED_PARAMETER (expanding to __attribute__ ((unused)) for GCC)
is used to annotate legitimately unused parameters, so that static
analysis tools can tell legitimately unused parameters from truly
unnecessary ones. To that end, some patches for external modules
are also added, that are only applied when compiling with GCC and
add necessary __attribute__ ((unused)) in headers.
|
|
|
|
|
|
Fix mistake in method for type OUStringBuffer
|
|
Part XXXV
Modules
stoc
|
|
|
|
|
|
|
|
|
|
post salhelper visibility markup and gbuildification express
2008 doesn't link without salhelper mentioned on link line
|
|
|
|
|
|
This commit for the old build system. (Don't bother for components not
relevant for Android.)
The Android package installer (as invoked through "adb install", from
"ant debug install") silently ignores native libraries in app packages
(.apk files) whose names don't start with "lib" and end with ".so".
The package builder (as invoked through "ant debug") in the SDK gladly
includes also thusly named native libraries in the .apk, though. Yay
for consistency.
|
|
From an email conversation with Stephen Bergmann
"I think the real intent always was to actually look through all the
returned getSuperclasses(), and the error that superclasses past the
first one are effectively ignored has never been noticed."
|
|
|
|
|
|
|
|
|
|
|
|
Done with perl regex:
s/(\n\s*OSL_TRACE\(\s*\"[^\n]+?)\s*(\\n)+(\"[^\n]*\)\;\n)/$1$3/gs;
- removed trailing whitespaces and (multiple) newlines
|
|
that checks for it can be removed
|
|
|
|
|
|
|