bitkeeper revision 1.1159.265.3 (42319571gIMQdofIDztktCfg053n-A)
authormjw@wray-m-3.hpl.hp.com <mjw@wray-m-3.hpl.hp.com>
Fri, 11 Mar 2005 12:56:17 +0000 (12:56 +0000)
committermjw@wray-m-3.hpl.hp.com <mjw@wray-m-3.hpl.hp.com>
Fri, 11 Mar 2005 12:56:17 +0000 (12:56 +0000)
Fix some errors in default error handling.

Signed-off-by: Mike Wray <mike.wray@hp.com>
tools/python/xen/xend/Args.py
tools/python/xen/xend/server/SrvBase.py
tools/python/xen/xend/server/SrvDir.py

index 3e16844f74b23e8d7b7da9dfa6564b63ee988cb1..480aa7ac21754769d28a1a20032da10f2d6e68e6 100644 (file)
@@ -78,6 +78,8 @@ class Args:
                 val = str(v)
             elif type == 'sxpr':
                 val = self.sxpr(v)
+            elif type == 'bool':
+                val = self.bool(v)
             else:
                 raise ArgError('invalid type:' + str(type))
             return val
@@ -86,6 +88,9 @@ class Args:
         except StandardError, ex:
             raise ArgError(str(ex))
 
+    def bool(self, v):
+        return (v.lower() in ['on', 'yes', '1', 'true'])
+
     def sxpr(self, v):
         if isinstance(v, types.ListType):
             val = v
index b32d10227316860e604f2adaf12fb3d4da216f75..5990733d75405503190cee76942a3e59527b2dac 100644 (file)
@@ -106,7 +106,8 @@ class SrvBase(resource.Resource):
         try:
             val = op_method(op, req)
         except Exception, err:
-            return self._perform_err(err, op, req)
+            self._perform_err(err, op, req)
+            return ''
             
         if isinstance(val, defer.Deferred):
             val.addCallback(self._perform_cb, op, req, dfr=1)
index 106c5ef26874d47e5d1e498f8cff3a656e23457c..712521c7b3e1f2af1c34dfecffff5b490603b438 100644 (file)
@@ -88,7 +88,7 @@ class SrvDir(SrvBase):
                 req.write('</body></html>')
             return ''
         except Exception, ex:
-            self._perform_err(ex, req)
+            self._perform_err(ex, "GET", req)
             
     def ls(self, req, use_sxp=0):
         url = req.prePathURL()