SF 1674179 enum variant leak. also affects 1112667 1465539 1569864

This commit is contained in:
clay_shooter
2007-03-10 16:04:39 +00:00
parent 3a2e9429f3
commit 165b6b7646
4 changed files with 26 additions and 4 deletions

View File

@@ -81,6 +81,10 @@ Java_com_jacob_com_EnumVariant_Next(JNIEnv* env, jobject _this, jobjectArray var
VariantCopy(v, sink + idx);
env->SetObjectArrayElement(vars, idx, newVariant);
env->DeleteLocalRef(newVariant);
//Sourceforge-1674179 fix memory leak
// Variants received while iterating IEnumVARIANT must be cleared when no longer needed
// The variant has been copied so no longer needed
VariantClear(sink);
}
CoTaskMemFree(sink);
return (jint)fetchCount;