summaryrefslogtreecommitdiff
path: root/bridges
diff options
context:
space:
mode:
Diffstat (limited to 'bridges')
-rw-r--r--bridges/source/remote/urp/urp_environment.cxx18
-rw-r--r--bridges/test/java_uno/acquire/makefile.mk12
-rw-r--r--bridges/test/java_uno/any/makefile.mk2
-rw-r--r--bridges/test/java_uno/equals/TestEquals.java3
-rw-r--r--bridges/test/java_uno/equals/makefile.mk2
-rw-r--r--bridges/test/java_uno/nativethreadpool/makefile.mk15
-rw-r--r--bridges/test/java_uno/nativethreadpool/testnativethreadpoolclient.cxx4
-rw-r--r--bridges/test/java_uno/nativethreadpool/testnativethreadpoolserver.cxx4
8 files changed, 39 insertions, 21 deletions
diff --git a/bridges/source/remote/urp/urp_environment.cxx b/bridges/source/remote/urp/urp_environment.cxx
index 5d1c4b9ab741..fd0c56ba4376 100644
--- a/bridges/source/remote/urp/urp_environment.cxx
+++ b/bridges/source/remote/urp/urp_environment.cxx
@@ -182,6 +182,7 @@ struct StaticSingleton
{
~StaticSingleton()
{
+ ::osl::MutexGuard guard( ::osl::Mutex::getGlobalMutex() );
g_bStaticDestructorsCalled = sal_True;
}
};
@@ -267,7 +268,13 @@ static void SAL_CALL RemoteEnvironment_thisDispose( uno_Environment *pEnvRemote
}
// in case, that the static destructors already have been called, no
// tiding up is done.
- if( ! g_bStaticDestructorsCalled && ! pContext->m_pBridgeImpl->m_bDisposed )
+ bool tidyUp;
+ {
+ ::osl::MutexGuard guard2( ::osl::Mutex::getGlobalMutex() );
+ tidyUp = ! g_bStaticDestructorsCalled &&
+ ! pContext->m_pBridgeImpl->m_bDisposed;
+ }
+ if( tidyUp )
{
// TODO : not threadsafe
// synchronization with dispatch methods needed !
@@ -335,9 +342,12 @@ static void SAL_CALL RemoteEnvironment_thisDispose( uno_Environment *pEnvRemote
pImpl->m_pReader = 0;
}
- // delete the stubs
- releaseStubs( pEnvRemote );
-
+ ::osl::MutexGuard guard2( ::osl::Mutex::getGlobalMutex() );
+ if( ! g_bStaticDestructorsCalled )
+ {
+ // delete the stubs
+ releaseStubs( pEnvRemote );
+ }
}
}
diff --git a/bridges/test/java_uno/acquire/makefile.mk b/bridges/test/java_uno/acquire/makefile.mk
index c9f04f503180..d027c067dad7 100644
--- a/bridges/test/java_uno/acquire/makefile.mk
+++ b/bridges/test/java_uno/acquire/makefile.mk
@@ -107,11 +107,15 @@ $(BIN)$/testacquire-java-server$(SCRIPTEXT):
$(GIVE_EXEC_RIGHTS) $@
$(BIN)$/testacquire-native-client$(SCRIPTEXT):
- echo uno -c com.sun.star.test.bridges.testacquire.impl -l $(SHL1TARGETN:f) \
- -ro $(TARGET).rdb -- $(TEST_JAVAUNO_ACQUIRE_UNO_URL) > $@
+ echo '$(AUGMENT_LIBRARY_PATH)' uno \
+ -c com.sun.star.test.bridges.testacquire.impl \
+ -l ../lib/$(SHL1TARGETN:f) -ro $(TARGET).rdb -- \
+ $(TEST_JAVAUNO_ACQUIRE_UNO_URL) > $@
$(GIVE_EXEC_RIGHTS) $@
$(BIN)$/testacquire-native-server$(SCRIPTEXT):
- echo uno -c com.sun.star.test.bridges.testacquire.impl -l $(SHL1TARGETN:f) \
- -ro $(TARGET).rdb -u $(TEST_JAVAUNO_ACQUIRE_UNO_URL) --singleaccept > $@
+ echo '$(AUGMENT_LIBRARY_PATH)' uno \
+ -c com.sun.star.test.bridges.testacquire.impl \
+ -l ../lib/$(SHL1TARGETN:f) -ro $(TARGET).rdb \
+ -u $(TEST_JAVAUNO_ACQUIRE_UNO_URL) --singleaccept > $@
$(GIVE_EXEC_RIGHTS) $@
diff --git a/bridges/test/java_uno/any/makefile.mk b/bridges/test/java_uno/any/makefile.mk
index d02c5fc4d93c..1957194f856a 100644
--- a/bridges/test/java_uno/any/makefile.mk
+++ b/bridges/test/java_uno/any/makefile.mk
@@ -115,7 +115,7 @@ $(OUT)$/bin$/TestRemote$(SCRIPTEXT) : $(JAVACLASSFILES)
$(OUT)$/bin$/TestJni$(SCRIPTEXT) : $(JAVACLASSFILES)
-rm -f $@
- echo java -classpath \
+ echo '$(AUGMENT_LIBRARY_PATH)' java -classpath \
.$(PATH_SEPERATOR)..$/class$(PATH_SEPERATOR)$(EXEC_CLASSPATH) \
-Djava.library.path=..$/lib test.java_uno.anytest.TestJni >> $@
$(GIVE_EXEC_RIGHTS) $@
diff --git a/bridges/test/java_uno/equals/TestEquals.java b/bridges/test/java_uno/equals/TestEquals.java
index 8cd0c8049ad9..31b735473c9b 100644
--- a/bridges/test/java_uno/equals/TestEquals.java
+++ b/bridges/test/java_uno/equals/TestEquals.java
@@ -197,7 +197,8 @@ public final class TestEquals {
loader.activate(
"com.sun.star.test.bridges."
+ "testequals.impl",
- "", "testequals.uno", null));
+ "", "../lib/testequals.uno",
+ null));
XTestInterface test = (XTestInterface)
UnoRuntime.queryInterface(
XTestInterface.class,
diff --git a/bridges/test/java_uno/equals/makefile.mk b/bridges/test/java_uno/equals/makefile.mk
index 787da9a88370..4064b5e48f09 100644
--- a/bridges/test/java_uno/equals/makefile.mk
+++ b/bridges/test/java_uno/equals/makefile.mk
@@ -86,7 +86,7 @@ $(MISC)$/$(TARGET).rdb: types.idl
$(SLOFILES) $(JAVACLASSFILES): $(MISC)$/$(TARGET).rdb
$(BIN)$/testequals$(SCRIPTEXT): $(BIN)$/testequals_services.rdb
- echo java -classpath \
+ echo '$(AUGMENT_LIBRARY_PATH)' java -classpath \
..$/class$/test$(PATH_SEPERATOR)..$/class$(PATH_SEPERATOR)\
..$/class$/java_uno.jar$(PATH_SEPERATOR)$(EXEC_CLASSPATH) \
test.java_uno.equals.TestEquals $(SOLARBINDIR)$/types.rdb \
diff --git a/bridges/test/java_uno/nativethreadpool/makefile.mk b/bridges/test/java_uno/nativethreadpool/makefile.mk
index 5eb7a8cb3a88..c8f7a778f051 100644
--- a/bridges/test/java_uno/nativethreadpool/makefile.mk
+++ b/bridges/test/java_uno/nativethreadpool/makefile.mk
@@ -101,25 +101,24 @@ $(BIN)$/$(TARGET).rdb .ERRREMOVE: $(MISC)$/$(TARGET)$/types.rdb \
$(REGCOMP) -register -r $(MISC)$/$(TARGET)$/bootstrap.rdb \
-c javaloader.uno$(DLLPOST) -c javavm.uno$(DLLPOST) \
-c stocservices.uno$(DLLPOST)
-.IF "$(GUI)" == "WNT"
+.IF "$(GUI)" == "WNT" || "$(USE_SHELL)" != "bash"
ERROR -- missing platform
.ELSE # GUI, WNT
- + setenv OO_JAVA_PROPERTIES RuntimeLib=$(JVM_LIB_URL) ; \
+ + export OO_JAVA_PROPERTIES='RuntimeLib=$(JVM_LIB_URL)' && \
$(REGCOMP) -register -r $@ -c file://$(PWD)/$(BIN)$/$(TARGET).uno.jar \
-br $(MISC)$/$(TARGET)$/bootstrap.rdb -classpath $(EXEC_CLASSPATH) \
-env:URE_INTERNAL_JAVA_DIR=file://$(SOLARBINDIR)
.ENDIF # GUI, WNT
test .PHONY: $(SHL1TARGETN) $(BIN)$/$(TARGET).uno.jar $(BIN)$/$(TARGET).rdb
-.IF "$(GUI)" == "WNT"
+.IF "$(GUI)" == "WNT" || "$(USE_SHELL)" != "bash"
ERROR -- missing platform
.ELSE # GUI, WNT
- uno -c test.javauno.nativethreadpool.server -l $(SHL2TARGETN) \
- -ro $(BIN)$/$(TARGET).rdb \
+ $(AUGMENT_LIBRARY_PATH) uno -c test.javauno.nativethreadpool.server \
+ -l $(SHL2TARGETN) -ro $(BIN)$/$(TARGET).rdb \
-u 'uno:socket,host=localhost,port=3830;urp;test' --singleaccept &
- + setenv OO_JAVA_PROPERTIES RuntimeLib=$(JVM_LIB_URL) ; \
- setenv CLASSPATH \
- $(EXEC_CLASSPATH)$(PATH_SEPERATOR)$(BIN)$/$(TARGET).uno.jar ; \
+ + $(AUGMENT_LIBRARY_PATH) OO_JAVA_PROPERTIES='RuntimeLib=$(JVM_LIB_URL)' \
+ CLASSPATH=$(EXEC_CLASSPATH)$(PATH_SEPERATOR)$(BIN)$/$(TARGET).uno.jar \
uno -c test.javauno.nativethreadpool.client -l $(SHL1TARGETN) \
-ro $(BIN)$/$(TARGET).rdb \
-env:URE_INTERNAL_JAVA_DIR=file://$(SOLARBINDIR)
diff --git a/bridges/test/java_uno/nativethreadpool/testnativethreadpoolclient.cxx b/bridges/test/java_uno/nativethreadpool/testnativethreadpoolclient.cxx
index b59f18f81e17..82bc6506a51f 100644
--- a/bridges/test/java_uno/nativethreadpool/testnativethreadpoolclient.cxx
+++ b/bridges/test/java_uno/nativethreadpool/testnativethreadpoolclient.cxx
@@ -167,7 +167,9 @@ css::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames() {
cppu::ImplementationEntry entries[] = {
{ &create, &getImplementationName, &getSupportedServiceNames,
- &cppu::createSingleComponentFactory, 0, 0 } };
+ &cppu::createSingleComponentFactory, 0, 0 },
+ { 0, 0, 0, 0, 0, 0 }
+};
}
diff --git a/bridges/test/java_uno/nativethreadpool/testnativethreadpoolserver.cxx b/bridges/test/java_uno/nativethreadpool/testnativethreadpoolserver.cxx
index fc01c0ffb7c3..bc52ec509c52 100644
--- a/bridges/test/java_uno/nativethreadpool/testnativethreadpoolserver.cxx
+++ b/bridges/test/java_uno/nativethreadpool/testnativethreadpoolserver.cxx
@@ -129,7 +129,9 @@ css::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames() {
cppu::ImplementationEntry entries[] = {
{ &create, &getImplementationName, &getSupportedServiceNames,
- &cppu::createSingleComponentFactory, 0, 0 } };
+ &cppu::createSingleComponentFactory, 0, 0 },
+ { 0, 0, 0, 0, 0, 0 }
+};
}