diff options
| author | Amith Yamasani <yamasani@google.com> | 2011-08-13 07:43:07 -0700 |
|---|---|---|
| committer | Amith Yamasani <yamasani@google.com> | 2011-08-13 07:43:07 -0700 |
| commit | b724c346e19d63d7ff194b2b06c4a1e0f7bc07b7 (patch) | |
| tree | 268941bc2c014d4f8a797501675b9f433125e53d /core/java/android | |
| parent | 99f09c27a4016dce3e01462e56a0410e8275a270 (diff) | |
| download | frameworks_base-b724c346e19d63d7ff194b2b06c4a1e0f7bc07b7.zip frameworks_base-b724c346e19d63d7ff194b2b06c4a1e0f7bc07b7.tar.gz frameworks_base-b724c346e19d63d7ff194b2b06c4a1e0f7bc07b7.tar.bz2 | |
Revert "Use a weakreference to prevent the static variable from holding an Activity."
Bug was fixed in a different way.
This reverts commit 352c01e2133b71918fa1cb2783a0a10e56117775.
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/text/DynamicLayout.java | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/core/java/android/text/DynamicLayout.java b/core/java/android/text/DynamicLayout.java index 4f42659..2c78679 100644 --- a/core/java/android/text/DynamicLayout.java +++ b/core/java/android/text/DynamicLayout.java @@ -268,11 +268,10 @@ extends Layout // generate new layout for affected text StaticLayout reflowed; - WeakReference<StaticLayout> layoutRef; + synchronized (sLock) { - layoutRef = sStaticLayoutRef; - reflowed = sStaticLayoutRef != null ? sStaticLayoutRef.get() : null; - sStaticLayoutRef = null; + reflowed = sStaticLayout; + sStaticLayout = null; } if (reflowed == null) { @@ -359,12 +358,8 @@ extends Layout } synchronized (sLock) { + sStaticLayout = reflowed; reflowed.finish(); - if (layoutRef == null || layoutRef.get() != reflowed) { - sStaticLayoutRef = new WeakReference<StaticLayout>(reflowed); - } else { - sStaticLayoutRef = layoutRef; - } } } @@ -493,8 +488,7 @@ extends Layout private int mTopPadding, mBottomPadding; - private static WeakReference<StaticLayout> sStaticLayoutRef = new WeakReference<StaticLayout>( - new StaticLayout(true)); + private static StaticLayout sStaticLayout = new StaticLayout(true); private static final Object[] sLock = new Object[0]; private static final int START = 0; |
