]> err.no Git - scalable-opengroupware.org/commitdiff
git-svn-id: http://svn.opengroupware.org/SOGo/inverse/trunk@1095 d1b88da0-ebda-0310...
authorwolfgang <wolfgang@d1b88da0-ebda-0310-925b-ed51d893ca5b>
Tue, 3 Jul 2007 14:18:20 +0000 (14:18 +0000)
committerwolfgang <wolfgang@d1b88da0-ebda-0310-925b-ed51d893ca5b>
Tue, 3 Jul 2007 14:18:20 +0000 (14:18 +0000)
ChangeLog
Main/SOGo.m
Main/SOGoProductLoader.m

index 176fc0041c22fe80923bff341c813306feaf451c..fdaa48b53d4c3a5efa860a1ac46bee4f89f21eb7 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2007-07-03  Wolfgang Sourdeau  <wsourdeau@inverse.ca>
+
+       * Main/SOGoProductLoader.m: only load bundle directories ending
+       with the "SOGo" extension.
+
+       * Main/SOGo.m ([SOGo
+       -_checkTableWithCM:cmtableURL:urlandType:tableType]): empty the
+       result set if the query has caused no exception. Otherwise we get
+       an "evaluation is in progress exception".
+
 2007-06-29  Wolfgang Sourdeau  <wsourdeau@inverse.ca>
 
        * SoObjects/SOGo/AgenorUserDefaults.m ([AgenorUserDefaults
index b4afe3a28cd85f0e00aa1cd64b8ac30976208c2d..efe2accf10744be180d986661e89eb076a33dd07 100644 (file)
@@ -169,6 +169,8 @@ static BOOL debugObjectAllocation = NO;
                 [NSString stringWithContentsOfFile: descFile]])
        [self logWithFormat: @"table '%@' successfully created!", tableName];
     }
+  else
+    [tc cancelFetch];
 
   [cm releaseChannel: tc];
 
index 57de27842aa436c7787f39b976bd5bcb18fc891e..c5ed1ef24ad700f6dd4b25808b4c354b6ab5b847 100644 (file)
 - (void)loadProducts {
   SoProductRegistry *registry = nil;
   NSFileManager *fm;
-  NSEnumerator  *pathes;
-  NSString      *lpath;
-  
+  NSEnumerator *pathes;
+  NSString *lpath, *bpath, *extension;
+  NSEnumerator *productNames;
+  NSString *productName;
+
   registry = [SoProductRegistry sharedProductRegistry];
   fm       = [NSFileManager defaultManager];
  
   pathes = [[self productSearchPathes] objectEnumerator];
-  while ((lpath = [pathes nextObject]) != nil) {
-    NSEnumerator *productNames;
-    NSString *productName;
-
-    [self logWithFormat:@"scanning SOGo products in: %@", lpath];
-
-    productNames = [[fm directoryContentsAtPath:lpath] objectEnumerator];
-    
-    while ((productName = [productNames nextObject]) != nil) {
-      NSString *bpath;
-
-      if ([[productName pathExtension] length] == 0)
-       /* filter out directories without extensions */
-       continue;
-      
-      bpath = [lpath stringByAppendingPathComponent:productName];
-      [self logWithFormat:@"  register SOGo product: %@", 
-              [bpath lastPathComponent]];
-      [registry registerProductAtPath:bpath];
+  lpath = [pathes nextObject];
+  while (lpath)
+    {
+      [self logWithFormat:@"scanning SOGo products in: %@", lpath];
+
+      productNames = [[fm directoryContentsAtPath: lpath] objectEnumerator];
+
+      productName = [productNames nextObject];
+      while (productName)
+       {
+         extension = [productName pathExtension];
+         if ([extension length] > 0
+             && [extension isEqualToString: @"SOGo"])
+           {
+             bpath = [lpath stringByAppendingPathComponent: productName];
+             [self logWithFormat:@"  register SOGo product: %@",
+                   productName];
+             [registry registerProductAtPath: bpath];
+           }
+         productName = [productNames nextObject];
+       }
+
+      lpath = [pathes nextObject];
     }
-  }
-  
+
   if (![registry loadAllProducts])
     [self warnWithFormat:@"could not load all products !"];
 }