Hi All,

We have compiled Apache OpenOffice3.4 source code and generated RPMs for core, 
URE and SDK. We have installed these RPMs.

While using the Apache OpenOffice 3.4 ure and sdk we observed following:
In one of our test cases we call "createInstanceWithContext()" function and 
this function lead to segmentation fault.
We ran this test case with VALGRIND tool and following are our observations:
                There is an invalid read in JavaLoader.
 Please find the Trace given below:
========================================================================================================================================================
                                ==5575== Invalid write of size 4
==5575==    at 0xD70EFC1: ???
==5575==    by 0xD7003EA: ???
==5575==    by 0xCC3112C: JavaCalls::call_helper(JavaValue*, methodHandle*, 
JavaCallArguments*, Thread*) (in $JAVA_JDK_JRE_PATH/lib/amd64/server/libjvm.so)
==5575==    by 0xCE1E148: os::os_exception_wrapper(void (*)(JavaValue*, 
methodHandle*, JavaCallArguments*, Thread*), JavaValue*, methodHandle*, 
JavaCallArguments*, Thread*) (in $JAVA_JDK_JRE_PATH/lib/amd64/server/libjvm.so)
==5575==    by 0xCC30F64: JavaCalls::call(JavaValue*, methodHandle, 
JavaCallArguments*, Thread*) (in $JAVA_JDK_JRE_PATH/lib/amd64/server/libjvm.so)
==5575==    by 0xCC02774: 
instanceKlass::call_class_initializer_impl(instanceKlassHandle, Thread*) (in 
$JAVA_JDK_JRE_PATH/lib/amd64/server/libjvm.so)
==5575==    by 0xCC00E2B: instanceKlass::initialize_impl(instanceKlassHandle, 
Thread*) (in $JAVA_JDK_JRE_PATH/lib/amd64/server/libjvm.so)
==5575==    by 0xCC00099: instanceKlass::initialize(Thread*) (in 
$JAVA_JDK_JRE_PATH/lib/amd64/server/libjvm.so)
==5575==    by 0xCC01123: instanceKlass::initialize_impl(instanceKlassHandle, 
Thread*) (in $JAVA_JDK_JRE_PATH/lib/amd64/server/libjvm.so)
==5575==    by 0xCC00099: instanceKlass::initialize(Thread*) (in 
$JAVA_JDK_JRE_PATH/lib/amd64/server/libjvm.so)
==5575==    by 0xCF08330: Threads::create_vm(JavaVMInitArgs*, bool*) (in 
$JAVA_JDK_JRE_PATH/lib/amd64/server/libjvm.so)
==5575==    by 0xCC66F2F: JNI_CreateJavaVM (in 
$JAVA_JDK_JRE_PATH/lib/amd64/server/libjvm.so)
==5575==    by 0xB24C4EF: jfw_plugin_startJavaVirtualMachine 
(sunjavaplugin.cxx:583)
==5575==    by 0xB024E71: jfw_startVM (framework.cxx:402)
==5575==    by 0xAE0422D: 
stoc_javavm::JavaVirtualMachine::getJavaVM(com::sun::star::uno::Sequence<signed 
char> const&) (javavm.cxx:793)
==5575==    by 0xA9DF6F6: stoc_javaloader::JavaComponentLoader::getJavaLoader() 
(javaloader.cxx:199)
==5575==    by 0xA9E0805: 
stoc_javaloader::JavaComponentLoader::activate(rtl::OUString const&, 
rtl::OUString const&, rtl::OUString const&, 
com::sun::star::uno::Reference<com::sun::star::registry::XRegistryKey> const&) 
(javaloader.cxx:398)
==5575==    by 0x54D6557: cppu::ORegistryFactoryHelper::createModuleFactory() 
(factory.cxx:900)
==5575==    by 0x54D675A: 
cppu::ORegistryFactoryHelper::createInstanceEveryTime(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext>
 const&) (factory.cxx:750)
==5575==    by 0x54D4B44: 
cppu::OSingleFactoryHelper::createInstanceWithContext(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext>
 const&) (factory.cxx:215)
==5575==    by 0x54D51A2: 
cppu::OFactoryComponentHelper::createInstanceWithContext(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext>
 const&) (factory.cxx:499)
==5575==    by 0x93998B8: 
stoc_smgr::OServiceManager::createInstanceWithContext(rtl::OUString const&, 
com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&) 
(servicemanager.cxx:1250)
.....................
.....................
.....................
========================================================================================================================================================
Please let us know any points on this and also let us know workaround on this 
issue.

Note: We are checking the correctness of "context" (using context.is() != NULL) 
before calling the function "createInstanceWithContext()".

Thanks in advance
Kandarpa Malipeddi

DISCLAIMER
==========
This e-mail may contain privileged and confidential information which is the 
property of Persistent Systems Ltd. It is intended only for the use of the 
individual or entity to which it is addressed. If you are not the intended 
recipient, you are not authorized to read, retain, copy, print, distribute or 
use this message. If you have received this communication in error, please 
notify the sender and delete all copies of this message. Persistent Systems 
Ltd. does not accept any liability for virus infected mails.

Reply via email to