In OpenSpliceDDS Community v5.5.1

Calling DomainParticipantFactory.set_qos(_) from a DPF instance using
the Java API makes the JVM segfault.
The reason was an invalid memory offset used in:
api/dcps/saj/c/code/saj_qosUtils.c -
saj_DomainParticipantFactoryQosCopyIn line 1283

Attached a mini patch that solves the problem (it is the diff on the
above c source file).

Hope this helps :)
Andrea
--- OpenSpliceDDS/src/api/dcps/saj/c/code/saj_qosUtils.c	2012-05-23 15:29:16.000000000 +0200
+++ OpenSpliceDDS.mine/src/api/dcps/saj/c/code/saj_qosUtils.c	2012-12-21 14:20:59.670335375 +0100
@@ -1280,7 +1280,7 @@
     {
          /* get the QosPolicy attributes */
         javaEntityFactory = (*env)->GetObjectField(env, src,
-            GET_CACHED(domainParticipantQos_entityFactory_fid));
+            GET_CACHED(domainParticipantFactoryQos_entityFactory_fid));
         saj_exceptionCheck(env);
         rc = saj_EntityFactoryQosPolicyCopyIn(env, javaEntityFactory, &dst->entity_factory);
         (*env)->DeleteLocalRef (env, javaEntityFactory);
_______________________________________________
OpenSplice DDS Developer Mailing List
[email protected]
Subscribe / Unsubscribe http://dev.opensplice.org/mailman/listinfo/developer

Reply via email to