Skip to content

Commit ae05713

Browse files
NAME-ASHWANIYADAVsvillar
authored andcommitted
VRBrowser: Delete jstring local refs in string getters
GetStorageAbsolutePath and GetActiveEnvironment released the UTF chars but never deleted the jstring local reference, unlike OnAppLink and AppendAppNotesToCrashLog in the same file. The render thread stays attached, so leaked locals are never reclaimed. Fixes #2041
1 parent f020580 commit ae05713

1 file changed

Lines changed: 2 additions & 0 deletions

File tree

app/src/main/cpp/VRBrowser.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -362,6 +362,7 @@ VRBrowser::GetStorageAbsolutePath(const std::string& aRelativePath) {
362362
const char *cstr = sEnv->GetStringUTFChars(jStr, nullptr);
363363
std::string str = std::string(cstr);
364364
sEnv->ReleaseStringUTFChars(jStr, cstr);
365+
sEnv->DeleteLocalRef(jStr);
365366

366367
if (aRelativePath.empty()) {
367368
return str;
@@ -405,6 +406,7 @@ VRBrowser::GetActiveEnvironment() {
405406
const char *cstr = sEnv->GetStringUTFChars(jStr, nullptr);
406407
std::string str = std::string(cstr);
407408
sEnv->ReleaseStringUTFChars(jStr, cstr);
409+
sEnv->DeleteLocalRef(jStr);
408410

409411
return str;
410412
}

0 commit comments

Comments
 (0)