1.1 --- a/src/solaris/classes/sun/awt/X11InputMethod.java Mon Mar 12 18:38:03 2012 +0100
1.2 +++ b/src/solaris/classes/sun/awt/X11InputMethod.java Mon Mar 12 18:47:29 2012 +0100
1.3 @@ -57,6 +57,8 @@
1.4 import java.io.FileReader;
1.5 import java.io.BufferedReader;
1.6 import java.io.IOException;
1.7 +import java.lang.ref.Reference;
1.8 +import java.lang.ref.WeakReference;
1.9 import sun.util.logging.PlatformLogger;
1.10 import java.util.StringTokenizer;
1.11 import java.util.regex.Pattern;
1.12 @@ -272,7 +274,7 @@
1.13 called on the passive client when endComposition is called.
1.14 */
1.15 if (needResetXIC && haveActiveClient() &&
1.16 - getClientComponent() != needResetXICClient){
1.17 + getClientComponent() != needResetXICClient.get()){
1.18 resetXIC();
1.19
1.20 // needs to reset the last xic focussed component.
1.21 @@ -873,7 +875,7 @@
1.22 boolean active = haveActiveClient();
1.23 if (active && composedText == null && committedText == null){
1.24 needResetXIC = true;
1.25 - needResetXICClient = getClientComponent();
1.26 + needResetXICClient = new WeakReference<Component>(getClientComponent());
1.27 return;
1.28 }
1.29