summaryrefslogtreecommitdiff
path: root/cppu
AgeCommit message (Collapse)Author
2012-05-23Better fix for ThreadPool/ORequestThread life cycleStephan Bergmann
This is a follow up to d015384e1d98fe77fd59339044f58efb1ab9fb25 "Fixed ThreadPool (and dependent ORequestThread) life cycle" that still had some problems: * First, if Bridge::terminate was first entered from the reader or writer thread, it would not join on that thread, so that thread could still be running during exit. That has been addressed by giving Bridge::dispose new semantics: It waits until both Bridge::terminate has completed (even if that was called from a different thread) and all spawned threads (reader, writer, ORequestThread workers) have been joined. (This implies that Bridge::dispose must not be called from such a thread, to avoid deadlock.) * Second, if Bridge::terminate was first entered from an ORequestThread, the call to uno_threadpool_dispose(0) to join on all such worker threads could deadlock. That has been addressed by making the last call to uno_threadpool_destroy wait to join on all worker threads, and by calling uno_threadpool_destroy only from the final Bridge::terminate (from Bridge::dispose), to avoid deadlock. (The special semantics of uno_threadpool_dispose(0) are no longer needed and have been removed, as they conflicted with the fix for the third problem below.) * Third, once uno_threadpool_destroy had called uno_threadpool_dispose(0), the ThreadAdmin singleton had been disposed, so no new remote bridges could successfully be created afterwards. That has been addressed by making ThreadAdmin a member of ThreadPool, and making (only) those uno_ThreadPool handles with overlapping life spans share one ThreadPool instance (which thus is no longer a singleton, either). Additionally, ORequestThread has been made more robust (in the style of salhelper::Thread) to avoid races. Change-Id: I2cbd1b3f9aecc1bf4649e482d2c22b33b471788f
2012-05-18fdo#42865: privatized unique empty string symbol:Michael Stahl
Unfortunately this --enable-dbg-util only problem (caused by _GLIBCXX_DEUBG) resurfaced, perhaps because of new std::string based logging in sal; adapt all map files to export the unique symbol.
2012-05-16Fixed ThreadPool (and dependent ORequestThread) life cycleStephan Bergmann
At least with sw_complex test under load, it happened that an ORequestThread could still process a remote release request while the main thread was already in exit(3). This was because (a) ThreadPool never joined with the spawned worker threads (which has been rectified by calling uno_threadpool_dispose(0) from the final uno_threadpool_destroy), and (b) binaryurp::Bridge called uno_threadpool_destroy only from its destructor (which could go as late as exit(3)) instead of from terminate. Additional clean up: * Access to Bridge's threadPool_ is now cleanly controlled by mutex_ (even though that might not be necessary in every case). * ThreadPool's stopDisposing got renamed to destroy, to make meaning clearer. Change-Id: I45fa76e80e790a11065e7bf8ac9d92af2e62f262
2012-04-29make gbuild the default assumption of build.plBjoern Michaelsen
this removes dmake completely out of the build for migrated modules build.pl now assumes modules to be gbuild, unless there is a prj/dmake file Change-Id: I674a036b182ee13c5ec093e83cb3d38133112d3b
2012-04-26fix OSL_DEBUG_LEVEL > 1 buildCaolán McNamara
2012-04-26Reverted "Leak TypeDescriptor_Init_Impl to avoid problems at exit."Stephan Bergmann
(This reverts commit 0ba6bd3ddc025666a6d4bb0640bf443728b23bd3.) The problems worked-around there are no longer observed by me, so they were hopefully only a temporal problem (the real root cause had never been found back then). If problems start to pop up again, we'll need to have another look at this.
2012-04-25WaE: Clang unused variableCatalin Iacob
2012-04-24WaE: implicit conversion changes signednessTor Lillqvist
2012-04-23doxygen warning fixesLuboš Luňák
2012-04-17remove doxygen warningsNorbert Thiebaud
2012-04-09cppu: use InternalUnoApiMatúš Kukan
2012-04-08LinkTarget.mk: remove gb_LinkTarget_add_package_headersMichael Stahl
2012-04-08gbuild: "use" vs. "add":Michael Stahl
Naming convention for gbuild methods: - "add" is used for stuff that is logically a part of the target (i.e. not registered at the Module, but defined in the target's makefile) - "use" is used for stuff that is logically a different target (i.e. it is registered at the Module, has it's own makefile, may be in a different module than the target)
2012-04-06Replaced equalsAsciiL(RTL_CONSTASCII_STRINGPARAM(...)) with == operatorSzabolcs Dezsi
2012-04-06Replaced equalsAsciiL(RTL_CONSTASCII_STRINGPARAM(...)) with == operatorSzabolcs Dezsi
Pattern used: find . -name "*.cxx" -exec sed -i 's/\( *\)\(else if\|if\) *( *\([^!()|&]*\)\.equalsAsciiL( *RTL_CONSTASCII_STRINGPARAM *( *\([^)]*\)) *) *)$/\1\2 ( \3 == \4 )/' \{\} \;
2012-04-05Do two fairly useless but often emitted OSL_TRACEs only if OSL_DEBUG_LEVEL > 2Tor Lillqvist
2012-03-21More hacking on static linking (iOS) supportTor Lillqvist
2012-03-21Uniquify uno_initEnvironment and uno_ext_getMapping in the static linking caseTor Lillqvist
2012-03-21Use MAX_ALIGNMENT_4 also for iOSTor Lillqvist
2012-03-14Dead codeStephan Bergmann
2012-03-14Enable -Wnon-virtual-dtor for GCC 4.6Stephan Bergmann
...which has the necessary features to support it. Change a lot of classes to either contain a protected non-virtual dtor (which is backwards compatible, so even works for cppumaker-generated UNO headers) or a public virtual one. cppuhelper/propertysetmixin.hxx still needs to disable the warning, as the relevant class has a non-virtual dtor but friends, which would still cause GCC to warn. Includes a patch for libcmis, intended to be upstreamed.
2012-03-10gbuild: get rid of realpath in gb_Foo_set_includeMatúš Kukan
2012-02-27cppu: JobQueue::enter: add mutex guards for m_nToDoMichael Stahl
Considered replacing it with oslInterlockedCount, but wondered why there is no osl_getInterlockedCount (similar to glib's g_atomic_int_get)...
2012-02-23Some doxygen warnings cleanupKorrawit Pruegsanusak
2012-02-21WaE: silence some documentation errorsThomas Arnhold
2012-02-14cleanup: remove remenants of gcc version checkingMichael Meeks
2012-02-10Avoid deadlocks when disposing recursive JobQueue::enterStephan Bergmann
...where the outer JobQueue::enter blocks on m_cndWait after it has been reset again due to m_lstJob.empty().
2012-02-06Added READMEs for modules related to URE, with content from the wikiJosh Heidenreich
2012-02-05switch to include-based build rather than sourced-based buildNorbert Thiebaud
2012-01-26Code cleanup: ( () ) replaced by (())Alexander Bergmann
2012-01-21Removed some unused parameters; added SAL_UNUSED_PARAMETER.Stephan Bergmann
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.
2012-01-19Drop UNO_REF_QUERY[_THROW] duplicates of UNO_QUERY[_THROW].Stephan Bergmann
They are virtually unused (at least the LibO code base has only a single use of UNO_REF_QUERY) but confuse static analysis tools that classify unused function parameters as "tags" (which legalizes the unusedness of those parameters) if they are of an enum type with exactly one value defined.
2012-01-06typo in OSL_DEBUG_LEVEL > 1 codeCaolán McNamara
2012-01-05Switch from autodoc to doxygen for SDK C++ documentation.Stephan Bergmann
* New build prerequisite doxygen (controllable via --with-doxygen). * Adapted various headers to slightly different doxygen documentation syntax, but much clean up still remains to be done (i.e., warnings emitted by doxygen fixed).
2012-01-05Leak TypeDescriptor_Init_Impl to avoid problems at exit.Stephan Bergmann
2012-01-05Explicitly initialize TypeDescriptor_Init_Impl.Stephan Bergmann
2012-01-02Replace dynamic array with std::vector.Stephan Bergmann
2011-12-23OSL_ASSERT -> assertStephan Bergmann
2011-12-19Add symbols from addsym.awk to gbuilified .map files.Stephan Bergmann
2011-12-19get this to build under msvc 2008Caolán McNamara
2011-12-19Prevent creation of new ORequestThreads during shutdown.Stephan Bergmann
2011-12-19Removed superfluous CPPU_DLLPUBLIC from definitions.Stephan Bergmann
2011-12-19-Werror=sign-promo fixesStephan Bergmann
2011-12-19cppu: add visibility symbolsMatúš Kukan
2011-12-19cppu: convert to gbuildMatúš Kukan
Because of unit tests is here custom target where are idl files processed.
2011-12-17Fix for fdo43460 Part X getLength() to isEmpty()Olivier Hallot
Part X Module cppu cppuhelper cpputools
2011-12-11I don't see NO_BSYMBOLIC being used anywhereTor Lillqvist
2011-12-08Less succes, more successStefan Knorr (astron)
2011-12-01-Wstrict-aliasing fixStephan Bergmann
2011-12-01The other uses of pReserved had been changed to nStaticRefCount in 2001.Stephan Bergmann