harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sjanu...@apache.org
Subject svn commit: r694186 - in /harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/unpack200: IcBands.java IcTuple.java
Date Thu, 11 Sep 2008 09:14:47 GMT
Author: sjanuary
Date: Thu Sep 11 02:14:45 2008
New Revision: 694186

URL: http://svn.apache.org/viewvc?rev=694186&view=rev
Log:
Apply patch for HARMONY-5977 ([classlib][pack200] nested explicit class names not handled
correctly)

Modified:
    harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/unpack200/IcBands.java
    harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/unpack200/IcTuple.java

Modified: harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/unpack200/IcBands.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/unpack200/IcBands.java?rev=694186&r1=694185&r2=694186&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/unpack200/IcBands.java
(original)
+++ harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/unpack200/IcBands.java
Thu Sep 11 02:14:45 2008
@@ -134,7 +134,7 @@
     		//  this relation is 1:M
 
             // If it's not anon and the outer is not anon, it could be relevant
-    		if (!tuple.isAnonymous() && !tuple.outerIsAnonymous()) {
+    		if ( (!tuple.isAnonymous() && !tuple.outerIsAnonymous()) || (tuple.nestedExplicitFlagSet())
) {
 
     			// add tuple to corresponding bucket
     			String key = tuple.outerClassString();

Modified: harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/unpack200/IcTuple.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/unpack200/IcTuple.java?rev=694186&r1=694185&r2=694186&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/unpack200/IcTuple.java
(original)
+++ harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/unpack200/IcTuple.java
Thu Sep 11 02:14:45 2008
@@ -90,6 +90,16 @@
         return predictOuter || predictSimple;
     }
 
+    
+    /**
+     * Answer true if the receiver's bit 16 is set (indicating
+     * that explicit outer class and name fields are set).
+     * @return boolean
+     */
+    public boolean nestedExplicitFlagSet() {
+        return (F & NESTED_CLASS_FLAG) == NESTED_CLASS_FLAG;
+    }
+
     /**
      * Break the receiver into components at $ boundaries.
      */
@@ -237,7 +247,7 @@
         if (isAllDigits(cachedSimpleClassName)) {
             anonymous = true;
             member = false;
-            if ((F & 65536) == 65536) {
+            if (nestedExplicitFlagSet()) {
                 // Predicted class - marking as member
                 member = true;
             }



Mime
View raw message