Revision
3641
Author
cdaboo@apple.com
Date
2009-02-05 07:18:19 -0800 (Thu, 05 Feb 2009)

Log Message

Handle property comparisons properly since some are multi-valued.

Modified Paths

Diff

Modified: CalendarServer/trunk/run (3640 => 3641)


--- CalendarServer/trunk/run	2009-02-05 15:16:34 UTC (rev 3640)
+++ CalendarServer/trunk/run	2009-02-05 15:18:19 UTC (rev 3641)
@@ -1,7 +1,7 @@
 #!/bin/bash
 
 ##
-# Copyright (c) 2005-2007 Apple Inc. All rights reserved.
+# Copyright (c) 2005-2009 Apple Inc. All rights reserved.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -692,7 +692,7 @@
 
 caldavtester="${top}/CalDAVTester";
 
-svn_get "CalDAVTester" "${caldavtester}" "${svn_uri_base}/CalDAVTester/trunk" 3626;
+svn_get "CalDAVTester" "${caldavtester}" "${svn_uri_base}/CalDAVTester/trunk" 3640;
 
 #
 # Calendar Server

Modified: CalendarServer/trunk/twistedcaldav/scheduling/icaldiff.py (3640 => 3641)


--- CalendarServer/trunk/twistedcaldav/scheduling/icaldiff.py	2009-02-05 15:16:34 UTC (rev 3640)
+++ CalendarServer/trunk/twistedcaldav/scheduling/icaldiff.py	2009-02-05 15:18:19 UTC (rev 3641)
@@ -1,5 +1,5 @@
 ##
-# Copyright (c) 2005-2007 Apple Inc. All rights reserved.
+# Copyright (c) 2005-2009 Apple Inc. All rights reserved.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -167,8 +167,9 @@
         
         for prop in props_to_test:
             # Change => no merge
-            if old_comp.getProperty(prop) != new_comp.getProperty(prop):
-                # Always overwrite as we have a big change going on
+            old_props = set(old_comp.properties(prop))
+            new_props = set(new_comp.properties(prop))
+            if old_props.difference(new_props):
                 return True
 
         return False