WebStack

patches/Webware/WebKit/Application.py-0.8.1.diff

289:43e23cde36c2
2004-09-21 paulb [project @ 2004-09-21 17:59:03 by paulb] Fixed path field discovery by removing parameters with empty names. This may not be totally correct, however.
     1 --- Application.py	Wed Jan 22 10:03:25 2003     2 +++ Application.py	Sun Feb  1 18:03:03 2004     3 @@ -389,7 +389,10 @@     4  		try:     5  			ssPath = request.serverSidePath()     6  			if ssPath is None or not os.path.exists(ssPath):     7 -				self.handleBadURL(transaction)     8 +				try:     9 +					self.handleGoodURL(transaction)    10 +				except Exception, exc:    11 +					self.handleBadURL(transaction)    12  			elif isdir(ssPath) and noslash(request.pathInfo()): # (*) see below    13  				self.handleDeficientDirectoryURL(transaction)    14  			elif self.isSessionIdProblematic(request):    15 @@ -1030,7 +1033,7 @@    16  			cache = self._servletCacheByPath.get(path, None)    17      18  		# File is not newer?    19 -		if cache and cache['timestamp']<os.path.getmtime(path):    20 +		if cache and cache.has_key('timestamp') and cache['timestamp']<os.path.getmtime(path):    21  			cache['instances'][:] = []    22  			cache = None    23      24 @@ -1038,11 +1041,15 @@    25  			cache = {    26  				'instances':  [],    27  				'path':	      path,    28 -				'timestamp':  os.path.getmtime(path),    29  				'threadsafe': 0,    30  				'reuseable':  0,    31  				}    32      33 +			try:    34 +				cache['timestamp'] = os.path.getmtime(path)    35 +			except OSError:    36 +				pass    37 +    38  			self.newServletCacheItem(path,cache)    39  			inst = self.getServlet(transaction,path,cache)    40      41 @@ -1284,8 +1291,8 @@    42  			else:    43  				return None, None, None    44      45 -		elif not os.path.isfile(ssPath):    46 -			return None, None, None    47 +		#elif not os.path.isfile(ssPath):    48 +		#	return None, None, None    49      50  		self._serverSideInfoCacheByPath[urlPath] = ssPath, contextPath, contextName    51