diff options
Diffstat (limited to 'jvmfwk/source/framework.cxx')
-rw-r--r-- | jvmfwk/source/framework.cxx | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/jvmfwk/source/framework.cxx b/jvmfwk/source/framework.cxx index f28092a59b28..e70e831e54b2 100644 --- a/jvmfwk/source/framework.cxx +++ b/jvmfwk/source/framework.cxx @@ -655,7 +655,7 @@ void jfw_freeJavaInfo(JavaInfo *pInfo) rtl_uString_release(pInfo->sLocation); rtl_uString_release(pInfo->sVersion); rtl_byte_sequence_release(pInfo->arVendorData); - rtl_freeMemory(pInfo); + delete pInfo; } javaFrameworkError jfw_getSelectedJRE(JavaInfo **ppInfo) @@ -1081,16 +1081,12 @@ JavaInfo * CJavaInfo::copyJavaInfo(const JavaInfo * pInfo) { if (pInfo == nullptr) return nullptr; - JavaInfo* newInfo = - static_cast<JavaInfo*>(rtl_allocateMemory(sizeof(JavaInfo))); - if (newInfo) - { - memcpy(newInfo, pInfo, sizeof(JavaInfo)); - rtl_uString_acquire(pInfo->sVendor); - rtl_uString_acquire(pInfo->sLocation); - rtl_uString_acquire(pInfo->sVersion); - rtl_byte_sequence_acquire(pInfo->arVendorData); - } + JavaInfo* newInfo = new JavaInfo; + memcpy(newInfo, pInfo, sizeof(JavaInfo)); + rtl_uString_acquire(pInfo->sVendor); + rtl_uString_acquire(pInfo->sLocation); + rtl_uString_acquire(pInfo->sVersion); + rtl_byte_sequence_acquire(pInfo->arVendorData); return newInfo; } |