You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by cr...@locus.apache.org on 2000/11/05 04:36:04 UTC

cvs commit: jakarta-tomcat/src/share/org/apache/tomcat/core Handler.java

craigmcc    00/11/04 19:36:04

  Modified:    src/share/org/apache/tomcat/core Tag: tomcat_32 Handler.java
  Log:
  Fix a race condition that could cause a servlet to be initialized twice if
  it had not been initialized before, and two+ simultaneous requests are
  received.
  
  Submitted by: yhs@mimic.onesource.com
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.7.2.3   +5 -3      jakarta-tomcat/src/share/org/apache/tomcat/core/Handler.java
  
  Index: Handler.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/src/share/org/apache/tomcat/core/Handler.java,v
  retrieving revision 1.7.2.2
  retrieving revision 1.7.2.3
  diff -u -r1.7.2.2 -r1.7.2.3
  --- Handler.java	2000/11/04 22:33:58	1.7.2.2
  +++ Handler.java	2000/11/05 03:36:04	1.7.2.3
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/src/share/org/apache/tomcat/core/Handler.java,v 1.7.2.2 2000/11/04 22:33:58 craigmcc Exp $
  - * $Revision: 1.7.2.2 $
  - * $Date: 2000/11/04 22:33:58 $
  + * $Header: /home/cvs/jakarta-tomcat/src/share/org/apache/tomcat/core/Handler.java,v 1.7.2.3 2000/11/05 03:36:04 craigmcc Exp $
  + * $Revision: 1.7.2.3 $
  + * $Date: 2000/11/05 03:36:04 $
    *
    * ====================================================================
    *
  @@ -246,6 +246,7 @@
       public void service(Request req, Response res) 
           throws IOException, ServletException
       {
  +      synchronized(this) {
   	if( ! initialized ) {
   	    try {
   		init();
  @@ -271,6 +272,7 @@
   		return;
   	    }
   	}
  +      }
   
   	if( ! internal )
   	    contextM.doPreService( req, res );