Revision: 1594 http://trac.macosforge.org/projects/calendarserver/changeset/1594 Author: wsanchez@apple.com Date: 2007-06-06 19:18:02 -0700 (Wed, 06 Jun 2007) Log Message: ----------- Deal with None query in case of no computer record. Modified Paths: -------------- CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py Modified: CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py =================================================================== --- CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py 2007-06-07 02:10:52 UTC (rev 1593) +++ CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py 2007-06-07 02:18:02 UTC (rev 1594) @@ -411,16 +411,18 @@ % (recordType,)) if self.requireComputerRecord: - cprecord = dsquery.match(dsattributes.kDSNAttrServicesLocator, self.servicetag, dsattributes.eDSStartsWith) + subquery = dsquery.match(dsattributes.kDSNAttrServicesLocator, self.servicetag, dsattributes.eDSStartsWith) if query: - query = dsquery.expression(dsquery.expression.AND, (cprecord, query)) + query = dsquery.expression(dsquery.expression.AND, (subquery, query)) else: - query = cprecord + query = subquery if shortName is not None: - query = dsquery.expression(dsquery.expression.AND, - (dsquery.match(dsattributes.kDSNAttrResourceType, shortName, dsattributes.eDSExact), query) - ) + subquery = dsquery.match(dsattributes.kDSNAttrResourceType, shortName, dsattributes.eDSExact) + if query is None: + query = subquery + else: + query = dsquery.expression(dsquery.expression.AND, (subquery, query)) records = {}