]> err.no Git - sope/commitdiff
applied a hack for gnustep-base compat
authorhelge <helge@e4a50df8-12e2-0310-a44c-efbce7f8a7e3>
Thu, 8 Feb 2007 19:32:36 +0000 (19:32 +0000)
committerhelge <helge@e4a50df8-12e2-0310-a44c-efbce7f8a7e3>
Thu, 8 Feb 2007 19:32:36 +0000 (19:32 +0000)
git-svn-id: http://svn.opengroupware.org/SOPE/trunk@1412 e4a50df8-12e2-0310-a44c-efbce7f8a7e3

sope-gdl1/GDLContentStore/ChangeLog
sope-gdl1/GDLContentStore/GCSFolder.m
sope-gdl1/GDLContentStore/Version

index f5fec6eb829311ff68ee61e068ff76cfb5a5a12e..afcd89ff6c77a1a8bee61d64061abbb113f98021 100644 (file)
@@ -1,3 +1,9 @@
+2007-02-08  Wolfgang Sourdeau  <WSourdeau@Inverse.CA>
+
+       * GCSFolder.m: added a gnustep-base hack to properly format bool
+         numbers for SQL. Base returns YES or NO in -stringValue while
+         libFoundation/NGExt returns 0 or 1 (v4.5.39)
+
 2007-01-15  Wolfgang Sourdeau  <WSourdeau@Inverse.CA>
 
        * GCSFolder.[hm], GCSFolderManager.m: added support for content table
index 31dfae7c15f3f5f0a0fe0573d7433cdf8437a98b..dbb54fdeec940f3d565f71a28b88ed54a3ad1367 100644 (file)
@@ -364,15 +364,24 @@ static GCSStringFormatter *stringFormatter = nil;
   if ([_value isKindOfClass:NSStringClass])
     return [stringFormatter stringByFormattingString:_value];
 
-  if ([_value isKindOfClass:NSNumberClass])
+  if ([_value isKindOfClass:NSNumberClass]) {
+#if GNUSTEP_BASE_LIBRARY
+    _value = [_value stringValue];
+    return ([_value hasPrefix:@"Y"] || [_value hasPrefix:@"N"])
+      ? ([_value boolValue] ? @"1" : @"0")
+      : _value;
+#endif
     return [_value stringValue];
-
+  }
+  
   if ([_value isKindOfClass:NSCalendarDateClass]) {
-    /* be smart ... convert to timestamp */
-    return [NSString stringWithFormat:@"%i", [_value timeIntervalSince1970]];
+    /* be smart ... convert to timestamp. Note: we loose precision. */
+    char buf[256];
+    snprintf(buf, sizeof(buf), "%i", (int)[_value timeIntervalSince1970]);
+    return [NSString stringWithCString:buf];
   }
   
-  [self logWithFormat:@"cannot handle value class: %@", [_value class]];
+  [self errorWithFormat:@"cannot handle value class: %@", [_value class]];
   return nil;
 }
 
index 5d9ca27c210a1d5a76b5e2bf2144878b09da09c9..e1a5dabe42f49c0dc5a476cf7f8b97bcceccacb7 100644 (file)
@@ -2,7 +2,7 @@
 
 MAJOR_VERSION:=4
 MINOR_VERSION:=5
-SUBMINOR_VERSION:=38
+SUBMINOR_VERSION:=39
 
 # v4.5.29 requires libNGExtensions v4.5.161
 # v4.5.26 does not require libNGiCal anymore