Merge "Fix memory-leak warnings from the static analyzer"

This commit is contained in:
Treehugger Robot
2017-03-01 01:45:51 +00:00
committed by Gerrit Code Review

View File

@@ -111,11 +111,12 @@ void android_view_InputChannel_setDisposeCallback(JNIEnv* env, jobject inputChan
} }
static jobject android_view_InputChannel_createInputChannel(JNIEnv* env, static jobject android_view_InputChannel_createInputChannel(JNIEnv* env,
NativeInputChannel* nativeInputChannel) { std::unique_ptr<NativeInputChannel> nativeInputChannel) {
jobject inputChannelObj = env->NewObject(gInputChannelClassInfo.clazz, jobject inputChannelObj = env->NewObject(gInputChannelClassInfo.clazz,
gInputChannelClassInfo.ctor); gInputChannelClassInfo.ctor);
if (inputChannelObj) { if (inputChannelObj) {
android_view_InputChannel_setNativeInputChannel(env, inputChannelObj, nativeInputChannel); android_view_InputChannel_setNativeInputChannel(env, inputChannelObj,
nativeInputChannel.release());
} }
return inputChannelObj; return inputChannelObj;
} }
@@ -143,13 +144,13 @@ static jobjectArray android_view_InputChannel_nativeOpenInputChannelPair(JNIEnv*
} }
jobject serverChannelObj = android_view_InputChannel_createInputChannel(env, jobject serverChannelObj = android_view_InputChannel_createInputChannel(env,
new NativeInputChannel(serverChannel)); std::make_unique<NativeInputChannel>(serverChannel));
if (env->ExceptionCheck()) { if (env->ExceptionCheck()) {
return NULL; return NULL;
} }
jobject clientChannelObj = android_view_InputChannel_createInputChannel(env, jobject clientChannelObj = android_view_InputChannel_createInputChannel(env,
new NativeInputChannel(clientChannel)); std::make_unique<NativeInputChannel>(clientChannel));
if (env->ExceptionCheck()) { if (env->ExceptionCheck()) {
return NULL; return NULL;
} }