From valgrind:
==24095== 432 (60 direct, 372 indirect) bytes in 3 blocks are definitely lost in loss record 69 of 79
==24095== at 0x4024C1C: malloc (vg_replace_malloc.c:195)
==24095== by 0x4049B68: memAddEncObj (support.c:551)
==24095== by 0x403DFB4: native_new_CMPIContext (context.c:180)
==24095== by 0x403DFF9: native_clone_CMPIContext (context.c:205)
==24095== by 0x40F903D: IndCIMXMLHandlerInvokeMethod (indCIMXMLHandler.c:626)
==24095== by 0x40704AE: invokeMethod (providerDrv.c:1425)
==24095== by 0x407F64C: processProviderInvocationRequestsThread (providerDrv.c:2701)
==24095== by 0x415A80D: start_thread (pthread_create.c:300)
==24095== by 0x423A8DD: clone (clone.S:130)
Which is referring to these lines:
if (retryRunning == 0) {
CMPIContext * pctx = native_clone_CMPIContext(ctx);
pthread_create(&t, &tattr,&retryExport,(void *) pctx);
retryRunning=1;
}
The context is cloned and passed to the new thread, but not freed when the thread exits.
This Tracker item was closed automatically by the system. It was
previously set to a Pending status, and the original submitter
did not respond within 60 days (the time period specified by
the administrator of this Tracker).