Since I was very busy lately (still am), could this be the thing that solves
my reladoing problem and the Application state not ready after that ?
I will test it somewhere next week, just to be sure, but it doesn't hurt to
ask..

Mvgr,
Martin

> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
> Sent: Thursday, August 30, 2001 10:41 PM
> To: [EMAIL PROTECTED]
> Subject: cvs commit:
> jakarta-tomcat/src/share/org/apache/tomcat/util/collections
> SimpleHashtable.java
>
>
> costin      01/08/30 13:40:51
>
>   Modified:    src/share/org/apache/tomcat/util/collections
>                         SimpleHashtable.java
>   Log:
>   Fix an error in SimpleHashtable.remove, that caused problems in
> reloading.
>
>   ( also added few more debug statements )
>
>   Revision  Changes    Path
>   1.6       +15 -5
> jakarta-tomcat/src/share/org/apache/tomcat/util/collections/Simple
> Hashtable.java
>
>   Index: SimpleHashtable.java
>   ===================================================================
>   RCS file:
> /home/cvs/jakarta-tomcat/src/share/org/apache/tomcat/util/collecti
> ons/SimpleHashtable.java,v
>   retrieving revision 1.5
>   retrieving revision 1.6
>   diff -u -r1.5 -r1.6
>   --- SimpleHashtable.java    2001/08/29 05:08:40     1.5
>   +++ SimpleHashtable.java    2001/08/30 20:40:51     1.6
>   @@ -97,7 +97,7 @@
>     * it makes a significant difference when normalizing attributes,
>     * which is done for each start-element construct.
>     *
>   - * @version $Revision: 1.5 $
>   + * @version $Revision: 1.6 $
>     */
>    public final class SimpleHashtable implements Enumeration
>    {
>   @@ -108,6 +108,7 @@
>        private Entry          current = null;
>        private int                    currentBucket = 0;
>
>   +    // number of elements in hashtable
>        private int                    count;
>        private int                    threshold;
>
>   @@ -317,18 +318,22 @@
>       Entry prev=null;
>       int hash = key.hashCode();
>       int index = (hash & 0x7FFFFFFF) % tab.length;
>   +   if( dL > 0 ) d("Idx " + index +  " " + tab[index] );
>       for (Entry e = tab[index] ; e != null ; prev=e, e = e.next) {
>   +       if( dL > 0 ) d("> " + prev + " " + e.next + " " + e + "
> " + e.key);
>           if ((e.hash == hash) && e.key.equals(key)) {
>               if( prev!=null ) {
>                   prev.next=e.next;
>               } else {
>                   tab[index]=e.next;
>               }
>   +           if( dL > 0 ) d("Removing from list " + tab[index] +
> " " + prev +
>   +                          " " + e.value);
>   +           count--;
>   +           Object res=e.value;
>   +           e.value=null;
>   +           return res;
>           }
>   -       count--;
>   -       Object res=e.value;
>   -       e.value=null;
>   -       return res;
>       }
>       return null;
>        }
>   @@ -348,5 +353,10 @@
>           this.value = value;
>           this.next = next;
>       }
>   +    }
>   +
>   +    private static final int dL=0;
>   +    private void d(String s ) {
>   +   System.err.println( "SimpleHashtable: " + s );
>        }
>    }
>
>
>
>

Reply via email to