From 2b22d22a8384a800043bc0141b3a36eaa59c0716 Mon Sep 17 00:00:00 2001 From: Alexander Blom Date: Tue, 24 Nov 2015 09:47:39 -0800 Subject: [PATCH] Clear static arg arrays after use Reviewed By: astreet Differential Revision: D2690812 fb-gh-sync-id: b00291c57e294eece5772531e9f16e0c60b8b8f4 --- .../facebook/react/uimanager/ViewManagersPropertyCache.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java index c34430cc64..fd0ce6c41e 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java @@ -5,6 +5,7 @@ package com.facebook.react.uimanager; import javax.annotation.Nullable; import java.lang.reflect.Method; +import java.util.Arrays; import java.util.HashMap; import java.util.Map; @@ -72,11 +73,13 @@ import com.facebook.react.bridge.ReadableMap; VIEW_MGR_ARGS[0] = viewToUpdate; VIEW_MGR_ARGS[1] = extractProperty(props); mSetter.invoke(viewManager, VIEW_MGR_ARGS); + Arrays.fill(VIEW_MGR_ARGS, null); } else { VIEW_MGR_GROUP_ARGS[0] = viewToUpdate; VIEW_MGR_GROUP_ARGS[1] = mIndex; VIEW_MGR_GROUP_ARGS[2] = extractProperty(props); mSetter.invoke(viewManager, VIEW_MGR_GROUP_ARGS); + Arrays.fill(VIEW_MGR_GROUP_ARGS, null); } } catch (Throwable t) { FLog.e(ViewManager.class, "Error while updating prop " + mPropName, t); @@ -92,10 +95,12 @@ import com.facebook.react.bridge.ReadableMap; if (mIndex == null) { SHADOW_ARGS[0] = extractProperty(props); mSetter.invoke(nodeToUpdate, SHADOW_ARGS); + Arrays.fill(SHADOW_ARGS, null); } else { SHADOW_GROUP_ARGS[0] = mIndex; SHADOW_GROUP_ARGS[1] = extractProperty(props); mSetter.invoke(nodeToUpdate, SHADOW_GROUP_ARGS); + Arrays.fill(SHADOW_GROUP_ARGS, null); } } catch (Throwable t) { FLog.e(ViewManager.class, "Error while updating prop " + mPropName, t);