summaryrefslogtreecommitdiff
path: root/bridges/source
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2012-03-26 17:46:52 +0200
committerStephan Bergmann <sbergman@redhat.com>2012-03-26 17:47:20 +0200
commit829a9b9c1041626efb688157658c1e0e2f6e8414 (patch)
tree5aed7b2b0546be0841ab25f2a67ae1fab5610cd4 /bridges/source
parent094cf7caf9659be5a0325048fa8a164e22de1fc9 (diff)
In Java, css.uno.RuntimeException is not derived from css.uno.Exception
which lead to Bridge::map_to_java (jni_data.cxx) copying the Context member of RuntimeException twice, once with a fieldID for Exception, which fails on Dalvik.
Diffstat (limited to 'bridges/source')
-rw-r--r--bridges/source/jni_uno/jni_info.cxx6
1 files changed, 5 insertions, 1 deletions
diff --git a/bridges/source/jni_uno/jni_info.cxx b/bridges/source/jni_uno/jni_info.cxx
index 1d601cf505bd..6f2a2a6bc2e7 100644
--- a/bridges/source/jni_uno/jni_info.cxx
+++ b/bridges/source/jni_uno/jni_info.cxx
@@ -282,7 +282,11 @@ JNI_compound_type_info::JNI_compound_type_info(
// retrieve info for base type
typelib_TypeDescription * base_td =
- reinterpret_cast< typelib_TypeDescription * >(
+ type_equals(
+ td->aBase.pWeakRef,
+ jni_info->m_RuntimeException_type.getTypeLibType())
+ ? 0
+ : reinterpret_cast< typelib_TypeDescription * >(
td->pBaseTypeDescription );
m_base = (0 == base_td ? 0 : jni_info->get_type_info( jni, base_td ));