Index: twisted/web2/dav/xattrprops.py
===================================================================
--- twisted/web2/dav/xattrprops.py	(revision 26899)
+++ twisted/web2/dav/xattrprops.py	(working copy)
@@ -123,6 +123,10 @@
         """
         try:
             data = self.attrs.get(self._encode(qname))
+        except KeyError:
+            raise HTTPError(StatusResponse(
+                    responsecode.NOT_FOUND,
+                    "No such property: {%s}%s" % qname))
         except IOError, e:
             if e.errno in _ATTR_MISSING:
                 raise HTTPError(StatusResponse(
@@ -198,6 +202,8 @@
         try:
             try:
                 self.attrs.remove(key)
+            except KeyError:
+                pass
             except IOError, e:
                 if e.errno not in _ATTR_MISSING:
                     raise
@@ -221,6 +227,8 @@
         key = self._encode(qname)
         try:
             self.attrs.get(key)
+        except KeyError:
+            return False
         except IOError, e:
             if e.errno in _ATTR_MISSING or e.errno == errno.ENOENT:
                 return False

Handle KeyError for missing xattr names.
Handle KeyError for missing xattr names.


git-svn-id: 81e381228600e5752b80483efd2b45b26c451ea2@4322 e27351fd-9f3e-4f54-a53b-843176b1656c
