Log message for revision 65903:
- fixed checkValidId, disallowing IDs starting with '@'
Changed:
U Zope/branches/2.9/doc/CHANGES.txt
U Zope/branches/2.9/lib/python/OFS/ObjectManager.py
U Zope/branches/2.9/lib/python/OFS/tests/testObjectManager.py
-=-
Modified: Zope/branches/2.9/doc/CHANGES.txt
===================================================================
--- Zope/branches/2.9/doc/CHANGES.txt 2006-03-10 18:01:31 UTC (rev 65902)
+++ Zope/branches/2.9/doc/CHANGES.txt 2006-03-10 18:01:49 UTC (rev 65903)
@@ -18,6 +18,9 @@
Bugs fixed
+ - OFS ObjectManager: Fixed 'checkValidId'.
+ Names starting with '@' are reserved for views and not allowed in IDs.
+
- Missing import of NotFound in webdav.Resource.
Zope 2.9.1 (2006/02/25)
Modified: Zope/branches/2.9/lib/python/OFS/ObjectManager.py
===================================================================
--- Zope/branches/2.9/lib/python/OFS/ObjectManager.py 2006-03-10 18:01:31 UTC
(rev 65902)
+++ Zope/branches/2.9/lib/python/OFS/ObjectManager.py 2006-03-10 18:01:49 UTC
(rev 65903)
@@ -82,6 +82,9 @@
'The id "%s" is invalid because it begins with "aq_".' % id)
if id.endswith('__'): raise BadRequest, (
'The id "%s" is invalid because it ends with two underscores.' % id)
+ if id[0] == '@':
+ raise BadRequest('The id "%s" is invalid because it begins with '
+ '"@".' % id)
if not allow_dup:
obj = getattr(self, id, None)
if obj is not None:
Modified: Zope/branches/2.9/lib/python/OFS/tests/testObjectManager.py
===================================================================
--- Zope/branches/2.9/lib/python/OFS/tests/testObjectManager.py 2006-03-10
18:01:31 UTC (rev 65902)
+++ Zope/branches/2.9/lib/python/OFS/tests/testObjectManager.py 2006-03-10
18:01:49 UTC (rev 65903)
@@ -378,6 +378,7 @@
self.assertRaises(BadRequest, om._setObject, '111', si)
self.assertRaises(BadRequest, om._setObject, 'REQUEST', si)
self.assertRaises(BadRequest, om._setObject, '/', si)
+ self.assertRaises(BadRequest, om._setObject, '@@view', si)
def test_list_imports(self):
om = self._makeOne()
@@ -389,6 +390,7 @@
self.failUnless(filename.endswith('.zexp') or
filename.endswith('.xml'))
+
def test_suite():
suite = unittest.TestSuite()
suite.addTest( unittest.makeSuite( ObjectManagerTests ) )
_______________________________________________
Zope-Checkins maillist - [email protected]
http://mail.zope.org/mailman/listinfo/zope-checkins