]> err.no Git - sope/commitdiff
fixed gcc 4.0 warnings
authorhelge <helge@e4a50df8-12e2-0310-a44c-efbce7f8a7e3>
Sun, 24 Apr 2005 17:15:13 +0000 (17:15 +0000)
committerhelge <helge@e4a50df8-12e2-0310-a44c-efbce7f8a7e3>
Sun, 24 Apr 2005 17:15:13 +0000 (17:15 +0000)
git-svn-id: http://svn.opengroupware.org/SOPE/trunk@768 e4a50df8-12e2-0310-a44c-efbce7f8a7e3

34 files changed:
sope-appserver/NGObjWeb/Associations/WOKeyPathAssociation.m
sope-appserver/NGObjWeb/ChangeLog
sope-appserver/NGObjWeb/NGHttp+WO.m
sope-appserver/NGObjWeb/NGHttp/NGHttpBodyParser.m
sope-appserver/NGObjWeb/NGHttp/NGHttpHeaderFieldParser.m
sope-appserver/NGObjWeb/NGHttp/NGHttpMessageParser.m
sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.m
sope-appserver/NGObjWeb/NGHttp/NGUrlFormCoder.m
sope-appserver/NGObjWeb/NSObject+WO.m
sope-appserver/NGObjWeb/OWResourceManager.m
sope-appserver/NGObjWeb/SoObjects/SoSubContext.m
sope-appserver/NGObjWeb/SoObjects/WODirectAction+SoObjects.m
sope-appserver/NGObjWeb/WEClientCapabilities.m
sope-appserver/NGObjWeb/WOApplication.m
sope-appserver/NGObjWeb/WOChildComponentReference.m
sope-appserver/NGObjWeb/WOComponent.m
sope-appserver/NGObjWeb/WOContext.m
sope-appserver/NGObjWeb/WODirectAction.m
sope-appserver/NGObjWeb/WODynamicElement.m
sope-appserver/NGObjWeb/WOElement.m
sope-appserver/NGObjWeb/WOFileSessionStore.m
sope-appserver/NGObjWeb/WOHTTPConnection.m
sope-appserver/NGObjWeb/WOMailDelivery.m
sope-appserver/NGObjWeb/WOMessage.m
sope-appserver/NGObjWeb/WOProxyRequestHandler.m
sope-appserver/NGObjWeb/WOResourceManager.m
sope-appserver/NGObjWeb/WOResourceRequestHandler.m
sope-appserver/NGObjWeb/WOResponse.m
sope-appserver/NGObjWeb/WOServerSessionStore.m
sope-appserver/NGObjWeb/WOSession.m
sope-appserver/NGObjWeb/WOSessionStore.m
sope-appserver/NGObjWeb/WOSimpleHTTPParser.m
sope-appserver/NGObjWeb/WOStatisticsStore.m
sope-appserver/NGObjWeb/WOStats.m

index 7131ec20e866f89e66d64e96b49668a514779ac2..0146c4888ca5135fe902277aabe2382d76668c46 100644 (file)
@@ -122,7 +122,7 @@ typedef union {
 } WOSetMethodType;
 
 typedef struct {
-  char            *ckey;
+  unsigned char   *ckey;
   short           keyLen:12;
   short           isFault:1;
   WOKeyType       type:3;
@@ -269,8 +269,8 @@ _parseKeyPath(WOKeyPathAssociation *self,NSString *_keyPath)
       memcpy(info->ckey, cstr, info->keyLen);
       info->ckey[info->keyLen] = '\0';
 
-      NSCAssert(strlen(info->ckey) > 0, @"invalid ckey ..");
-      NSCAssert((int)strlen(info->ckey) == (int)info->keyLen, 
+      NSCAssert(strlen((char *)info->ckey) > 0, @"invalid ckey ..");
+      NSCAssert((int)strlen((char *)info->ckey) == (int)info->keyLen, 
                 @"size and content differ");
       
       info->object = nil;
@@ -396,7 +396,7 @@ static inline void _fillInfo(WOKeyPathAssociation *self, id object,
       method = class_get_instance_method(clazz, @selector(valueForBinding:));
       info->type = WOKeyType_binding;
       info->extra.key =
-        [[StringClass alloc] initWithCString:(info->ckey + 1)];
+        [[StringClass alloc] initWithCString:(char *)(info->ckey + 1)];
     }
     else {
       if (object) {
@@ -407,17 +407,17 @@ static inline void _fillInfo(WOKeyPathAssociation *self, id object,
             if (method != METHOD_NULL) {
               info->type      = WOKeyType_kvc;
               info->extra.key = 
-               [[StringClass alloc] initWithCString:info->ckey];
+               [[StringClass alloc] initWithCString:(char *)info->ckey];
             }
             else {
-              info->extra.sel.get = sel_get_uid(info->ckey);
+              info->extra.sel.get = sel_get_uid((char *)info->ckey);
               method = class_get_instance_method(clazz, info->extra.sel.get);
               if (method != METHOD_NULL)
                 info->type = WOKeyType_method;
             }
           }
           else {
-            info->extra.sel.get = sel_get_uid(info->ckey);
+            info->extra.sel.get = sel_get_uid((char *)info->ckey);
             method = class_get_instance_method(clazz, info->extra.sel.get);
             
             if (method != METHOD_NULL)
@@ -428,7 +428,7 @@ static inline void _fillInfo(WOKeyPathAssociation *self, id object,
               if (method != METHOD_NULL) {
                 info->type      = WOKeyType_kvc;
                 info->extra.key = 
-                 [[StringClass alloc] initWithCString:info->ckey];
+                 [[StringClass alloc] initWithCString:(char *)info->ckey];
               }
             }
           }
@@ -437,10 +437,11 @@ static inline void _fillInfo(WOKeyPathAssociation *self, id object,
           method = class_get_class_method(object, @selector(valueForKey:));
           if (method != METHOD_NULL) {
             info->type      = WOKeyType_kvc;
-            info->extra.key = [[StringClass alloc] initWithCString:info->ckey];
+            info->extra.key = 
+             [[StringClass alloc] initWithCString:(char *)info->ckey];
           }
           else {
-            info->extra.sel.get = sel_get_uid(info->ckey);
+            info->extra.sel.get = sel_get_uid((char *)info->ckey);
             method =
               class_get_class_method(*(Class *)object, info->extra.sel.get);
             if (method != METHOD_NULL) {
@@ -756,9 +757,9 @@ static inline void _getSetSelName(register unsigned char *buf,
 }
 static inline SEL _getSetSel(register const unsigned char *_key,
                              register unsigned _len) {
-  char buf[259];
+  unsigned char buf[259];
   _getSetSelName(buf, _key, _len);
-  return sel_get_uid(buf);
+  return sel_get_uid((char *)buf);
 }
 
 static BOOL _setValue(WOKeyPathAssociation *self, id _value, id root) {
@@ -835,11 +836,11 @@ static BOOL _setValue(WOKeyPathAssociation *self, id _value, id root) {
               if ((clen = [_value cStringLength]) == 0)
                 sm.strmethod(object, setSel, "");
               else {
-                unsigned char *buf;
+                char *buf;
                 buf = malloc(clen + 4);
                 [_value getCString:buf]; buf[clen] = '\0';
                 sm.strmethod(object, setSel, buf);
-               if (buf) free(buf);
+               if (buf != NULL) free(buf);
               }
             }
             break;
index 2d0016b976d4e669370b8477a7d8ad5563ff8892..f5f71e60cc87af04abdc703601f4526cd896c2ca 100644 (file)
@@ -1,5 +1,12 @@
 2005-04-24  Helge Hess  <helge.hess@opengroupware.org>
 
+       * v4.5.155
+
+       * WOMailDelivery.m: generate \r\n instead of \n when writing to the
+         sendmail process
+
+       * fixed gcc 4.0 warnings
+
        * WOHttpAdaptor, WebDAV: fixed gcc 4.0 warnings (v4.5.154)
 
        * v4.5.153
index 6c3540700fad9cd40e860e1c78bcd38fd704c978..d19caa6132c6906c0ea35d3155ba0652ef77802e 100644 (file)
@@ -195,7 +195,7 @@ static Class NSArrayClass = Nil;
     return;
   }
 
-  cookieValue = [_cookie value];
+  cookieValue = [(NGHttpCookie *)_cookie value];
   if ([cookieValue isKindOfClass:[NSArray class]]) {
     if ([cookieValue count] == 0)
       cookieValue = @"";
@@ -361,8 +361,8 @@ static Class      DispClass = Nil;
   }
   
   p++; // skip the '?'
-  map = NGDecodeUrlFormParameters(p, strlen(p));
-  if (uribuf) free(uribuf); uribuf = NULL; p = NULL;
+  map = NGDecodeUrlFormParameters((unsigned char *)p, strlen((char *)p));
+  if (uribuf != NULL) free(uribuf); uribuf = NULL; p = NULL;
   
   if (map == nil) 
     return formContent;
index 1d9600f710717ed2fa09961c64ce43c62b29b12f..2fc3e20032e7dd8de9e028b1760d59ae4cccc78d 100644 (file)
@@ -46,7 +46,7 @@
   }
   if (len == 0) return nil;
   
-  body = NGDecodeUrlFormParameters(bytes, len);
+  body = NGDecodeUrlFormParameters((unsigned char *)bytes, len);
   return [body autorelease];
 }
 
index b2fe211853a36d5d88c83485c2fbf0ff85713ed2..4aebb2270f764288b13f0140968e59d371cc54c4 100644 (file)
@@ -30,7 +30,7 @@ static Class NSArrayClass = Nil;
 
 - (id)parseValue:(id)_data ofHeaderField:(NSString *)_field {
   unsigned              len   = 0;
-  const unsigned char         *src  = NULL;
+  const unsigned char   *src  = NULL;
   NGHttpHostHeaderField *value = nil;
   NSString *str = nil;
 
@@ -40,7 +40,7 @@ static Class NSArrayClass = Nil;
   }
   else {
     len = [_data cStringLength];
-    src = [_data cString];
+    src = (const unsigned char *)[_data cString];
   }
   if (len == 0) {
 #if DEBUG
@@ -55,7 +55,7 @@ static Class NSArrayClass = Nil;
     len--;
   }
 
-  str = [[NSString alloc] initWithCString:src length:len];
+  str = [[NSString alloc] initWithCString:(char *)src length:len];
   NSAssert(str, @"string allocation failed ..");
 
   if ([_field isEqualToString:@"host"])
@@ -88,7 +88,7 @@ static Class NSArrayClass = Nil;
   }
   else {
     len = [_data cStringLength];
-    src = [_data cString];
+    src = (const unsigned char *)[_data cString];
   }
 
   if (len == 0) {
@@ -114,7 +114,7 @@ static Class NSArrayClass = Nil;
       src++;
       len--;
     }
-    scheme = [NSString stringWithCString:start length:(src - start)];
+    scheme = [NSString stringWithCString:(char *)start length:(src - start)];
   }
 
   // skip spaces
@@ -167,7 +167,7 @@ static Class NSArrayClass = Nil;
   }
   else {
     len = [_data cStringLength];
-    src = [_data cString];
+    src = (const unsigned char *)[_data cString];
   }
 
   if (len == 0) {
@@ -213,7 +213,7 @@ static Class NSArrayClass = Nil;
       NSLog(@"field %@: current len=%i %s(%i)", _field, len, startPos, partLen);
 #endif
       
-      part = [self parseValuePart:startPos
+      part = [self parseValuePart:(const char *)startPos
                    length:partLen
                    zone:[array zone]];
       if (part) {
@@ -244,19 +244,19 @@ static Class NSArrayClass = Nil;
 
 @implementation NGHttpCharsetHeaderFieldParser
 
-- (id)parseValue:(NSData *)_data ofHeaderField:(NSString *)_field {
+- (id)parseValue:(id)_data ofHeaderField:(NSString *)_field {
   id value = nil;
 
-  value = [super parseValue:_data ofHeaderField:_field];
-  if (value) {
-    if (NSArrayClass == Nil)
-      NSArrayClass = [NSArray class];
-    
-    NSAssert([value isKindOfClass:NSArrayClass], @"invalid value ..");
+  if ((value = [super parseValue:_data ofHeaderField:_field]) == nil)
+    return nil;
+  
+  if (NSArrayClass == Nil)
+    NSArrayClass = [NSArray class];
     
-    value = [[NGHttpCharsetHeaderField alloc] initWithArray:value];
-    value = AUTORELEASE(value);
-  }
+  NSAssert([value isKindOfClass:NSArrayClass], @"invalid value ..");
+  
+  value = [[NGHttpCharsetHeaderField alloc] initWithArray:value];
+  value = [value autorelease];
   return value;
 }
 
index 2938e379aae7c92e744154b744a0ec37585d4bb2..98b30aa3a08ee03957bdf8bab9e25ad2d217d732 100644 (file)
@@ -234,25 +234,25 @@ static inline int _skipLWSP(NGHttpMessageParser *self, int _c) {
     bytes = [data mutableBytes];
     
     /* strip trailing spaces ... */
-    len = strlen(bytes);
+    len = strlen((char *)bytes);
     while (len > 0) {
       if (bytes[len - 1] != 32) break;
       len--;
       bytes[len] = '\0';
     }
     
-    if ((tmp = rindex(bytes, 32))) {
+    if ((tmp = (unsigned char *)rindex((char *)bytes, 32))) {
       unsigned char *t2;
       
-      if ((t2 = strstr(tmp, "HTTP"))) {
+      if ((t2 = (unsigned char *)strstr((char *)tmp, "HTTP"))) {
         /* has a HTTP version spec ... */
         
         *tmp = '\0';
         tmp++;
-        self->version = [[NSString alloc] initWithCString:tmp];
+        self->version = [[NSString alloc] initWithCString:(char *)tmp];
         
         /* strip trailing spaces ... */
-        len = strlen(bytes);
+        len = strlen((char *)bytes);
         while (len > 0) {
           if (bytes[len - 1] != 32) break;
           len--;
@@ -263,7 +263,7 @@ static inline int _skipLWSP(NGHttpMessageParser *self, int _c) {
         /* has no HTTP version spec, but possibly trailing spaces */
         
         /* strip trailing spaces ... */
-        len = strlen(bytes);
+        len = strlen((char *)bytes);
         while (len > 0) {
           if (bytes[len - 1] != 32) break;
           len--;
@@ -274,9 +274,9 @@ static inline int _skipLWSP(NGHttpMessageParser *self, int _c) {
     else {
       /* has no HTTP version spec */
     }
-    self->uri = [[NSString alloc] initWithCString:bytes];
+    self->uri = [[NSString alloc] initWithCString:(char *)bytes];
     
-    RELEASE(data); data = nil;
+    [data release]; data = nil;
   }
 
 #if 0
@@ -508,7 +508,7 @@ static inline int _skipLWSP(NGHttpMessageParser *self, int _c) {
     return NO;
 }
 
-- (NGMimeBodyParser *)parserForBodyOfPart:(id<NGMimePart>)_part
+- (id<NGMimeBodyParser>)parserForBodyOfPart:(id<NGMimePart>)_part
   data:(NSData *)_dt
 {
   NGMimeType *contentType;
index 28cac4124db430095b1e1e11275e8dc5ad00d092..96b416daa6d9d8bedc30e221fd865876e84b000c 100644 (file)
@@ -103,12 +103,14 @@ NSString *methodNames[] = {
 
 - (NGHashMap *)uriParameters { // parameters in x-www-form-urlencoded encoding
   if (self->uriParameters == nil) {
-    const char *cstr = [self->uri cString];
-    const char *pos  = index(cstr, '?');
-
-    if (pos) {
+    const char *cstr;
+    const unsigned char *pos;
+    
+    cstr = [self->uri cString];
+    pos  = (const unsigned char *)index(cstr, '?');
+    if (pos != NULL) {
       pos++;
-      self->uriParameters = NGDecodeUrlFormParameters(pos, strlen(pos));
+      self->uriParameters = NGDecodeUrlFormParameters(pos, strlen((char*)pos));
     }
   }
   return self->uriParameters;
index 259cb6cf79f070999a1887fadf9bf144925269f4..1fa0159fc1183586f04f9b7f4cac64d7daad1c1a 100644 (file)
@@ -46,8 +46,9 @@ static __inline__ int _valueOfHexChar(unsigned char _c) {
 }
 
 static __inline__ unsigned
-_unescapeUrl(const char *_src, unsigned _len, char *_dest) 
+_unescapeUrl(const unsigned char *_src, unsigned _len, unsigned char *_dest) 
 {
+  // ODO: return Unicode?
   register unsigned i, i2;
 
   for (i = 0, i2 = 0; i < _len; i++, i2++) {
@@ -79,13 +80,13 @@ static __inline__ NSString *urlStringFromBuffer(const unsigned char *buffer,
 {
   // TODO: we assume ISO-Latin-1/Unicode encoding, which might be wrong
 #if LIB_FOUNDATION_LIBRARY
-  return [[StrClass alloc] initWithCString:buffer length:len];
+  return [[StrClass alloc] initWithCString:(char *)buffer length:len];
 #else
   register signed int i;
   unichar  *s;
   NSString *value;
   
-  s = malloc((len + 2) * sizeof(unichar));
+  s = calloc((len + 2), sizeof(unichar));
   for (i = len - 1; i >= 0; i--)
     s[i] = buffer[i];
   value = [[StrClass alloc] initWithCharacters:s length:len];
@@ -113,13 +114,13 @@ NGHashMap *NGDecodeUrlFormParameters(const unsigned char *_buffer,
   do {
     NSString *key = nil, *value = nil;
     unsigned tmp, len;
-    char     buffer[_len];
+    unsigned char buffer[_len];
 
     /* read key */
     tmp = pos;
     while ((pos < _len) && (_buffer[pos] != '='))
       pos++;
-
+    
     len = _unescapeUrl(&(_buffer[tmp]), (pos - tmp), buffer);
     key = len > 0 ? urlStringFromBuffer(buffer, len) : @"";
     
index 2f977c5d70fc549aee76e1a35acd37067891a33e..64128f9fc489404309dbfb007c4b887eee70c956 100644 (file)
@@ -129,7 +129,7 @@ static inline void _getSetSelName(register unsigned char *buf,
 static inline SEL _getSetSel(register const unsigned char *_key,
                              register unsigned _len) {
   char buf[259];
-  _getSetSelName(buf, _key, _len);
+  _getSetSelName((unsigned char *)buf, _key, _len);
 #if APPLE_RUNTIME || NeXT_RUNTIME
   return sel_getUid(buf);
 #else
@@ -179,7 +179,7 @@ BOOL WOSetKVCValueUsingMethod(id object, NSString *_key, id _value) {
   
   buf = malloc(keyLen + 2);
   [_key getCString:buf];
-  setSel = _getSetSel(buf, keyLen);
+  setSel = _getSetSel((unsigned char *)buf, keyLen);
   free(buf); buf = NULL;
   
   if (setSel == NULL) // no such selector
index 944e7df8ef4f39d117234b11e5fdc178e4f2e974..589172b95b91764dab5e8cc02bb7b49c3c69a555 100644 (file)
@@ -1111,9 +1111,7 @@ _pathExists(OWResourceManager *self, NSFileManager *fm, NSString *path)
   return (WOElement *)[cdef template];
 }
 
-- (WOComponent *)pageWithName:(NSString *)_name
-  languages:(NSArray *)_languages
-{
+- (id)pageWithName:(NSString *)_name languages:(NSArray *)_languages {
   /* 
      TODO: this appears to be deprecated since the WOComponent initializer
            is now -initWithContext: and we have no context here ...
index ba9dd0ac4431816fd84693273ab0c8292a33efa3..202ca8910de8ce225aae82071ba17328030015ea 100644 (file)
@@ -87,7 +87,7 @@
 - (void)setSession:(WOSession *)_session {
   [self logWithFormat:@"ignoring -setSession:%@ on sub-context", _session];
 }
-- (WOSession *)session {
+- (id)session {
   return [[self parentContext] session];
 }
 
 - (void)setPage:(WOComponent *)_page {
   [self logWithFormat:@"ignoring -setPage:%@ on sub-context", _page];
 }
-- (WOComponent *)page {
+- (id)page {
   return [[self parentContext] page];
 }
 
index 74b78f4e8c6f194b53109ef980b76b88519db0c4..a62c186cf8b11aca6daa07fa550b3608db908243 100644 (file)
@@ -80,7 +80,7 @@
 - (BOOL)isCallable {
   return YES;
 }
-- (id)callOnObject:(id)_object inContext:(WOContext *)_ctx {
+- (id)callOnObject:(id)_object inContext:(id)_ctx {
   return [_object ? _object : self->parent performActionNamed:self->daName];
 }
 
index ac3a820a293a8f9c2c05543dcd0f9c1c61044a63..c6156dccb428f46614249c23de3f71d0cd29ac61 100644 (file)
@@ -88,8 +88,8 @@
 
 - (id)initWithRequest:(WORequest *)_request {
   NSString *ac;
-  const unsigned char *ua;
-  const unsigned char *tmp;
+  const char *ua;
+  const char *tmp;
   int defaultOS  = WEOS_UNKNOWN;
   int defaultCPU = WECPU_UNKNOWN;
   
index 7685f4d8086a1eacb00f47c8f296297ba33457c9..3c5b7bd75343c9a8ee5a2a66db9c9be296566d49 100644 (file)
@@ -557,14 +557,14 @@ static NSString *defaultCompRqHandlerClassName = @"WOComponentRequestHandler";
   unsigned char buf[20];
   
   sessionCount++;
-  sprintf(buf, "%04X%04X%02X%08X",
+  sprintf((char *)buf, "%04X%04X%02X%08X",
           [[self number] intValue], getpid(), sessionCount, 
           (unsigned int)time(NULL));
-  wosid = [NSString stringWithCString:buf];
+  wosid = [NSString stringWithCString:(char *)buf];
   return wosid;
 }
 
-- (WOSession *)createSessionForRequest:(WORequest *)_request {
+- (id)createSessionForRequest:(WORequest *)_request {
   if ([self respondsToSelector:@selector(createSession)]) {
     /* call deprecated method */
     [self warnWithFormat:@"calling deprecated -createSession .."];
@@ -580,9 +580,7 @@ static NSString *defaultCompRqHandlerClassName = @"WOComponentRequestHandler";
   }
 }
 
-- (WOSession *)restoreSessionWithID:(NSString *)_sid
-  inContext:(WOContext *)_ctx
-{
+- (id)restoreSessionWithID:(NSString *)_sid inContext:(WOContext *)_ctx {
   WOSession *session;
   
   *(&session) = nil;
@@ -753,7 +751,7 @@ static NSString *defaultCompRqHandlerClassName = @"WOComponentRequestHandler";
   }
 }
 
-- (WOSession *)session {
+- (id)session {
   return [[self context] session];
 }
 
@@ -1034,7 +1032,7 @@ nbuckets, nindices, narrays, idxsize);
   return self->permanentPageCacheSize;
 }
 
-- (WOComponent *)pageWithName:(NSString *)_name {
+- (id)pageWithName:(NSString *)_name {
   // deprecated in WO4
   return [self pageWithName:_name inContext:[self context]];
 }
@@ -1092,10 +1090,10 @@ nbuckets, nindices, narrays, idxsize);
   
   return [page autorelease];
 }
-- (WOComponent *)pageWithName:(NSString *)_name inContext:(WOContext *)_ctx {
+- (id)pageWithName:(NSString *)_name inContext:(WOContext *)_ctx {
   return [self _pageWithName:_name inContext:_ctx];
 }
-- (WOComponent *)pageWithName:(NSString *)_name forRequest:(WORequest *)_req {
+- (id)pageWithName:(NSString *)_name forRequest:(WORequest *)_req {
   WOResourceManager *rm;
 
   if ((rm = [self resourceManager]) == nil)
index 500e2a337e349a2acb4d54c25fb51a920de2e3a3..ef20f81fb12895d0493acd2983b39d0a1a92b44b 100644 (file)
@@ -78,7 +78,7 @@ static Class NSDateClass = Nil;
   return self->childName;
 }
 
-- (WOElement *)template {
+- (id)template {
   return self->template;
 }
 
index 734e11318957efca50ffad90c92295481346b1b6..efe54cc3b24a3b0c5a83a2805710e7062ca06e5d 100644 (file)
@@ -383,7 +383,7 @@ static inline id _getExtraVar(WOComponent *self, NSString *_key) {
   return [@"/" stringByAppendingString:[self name]];
 }
 
-- (WOApplication *)application {
+- (id)application {
   if (self->application == nil)
     return (self->application = [WOApplication application]);
   return self->application;
@@ -398,7 +398,7 @@ static inline id _getExtraVar(WOComponent *self, NSString *_key) {
 
   return nil;
 }
-- (WOSession *)session {
+- (id)session {
   if (self->session == nil) {
     if ((self->session = [[self context] session]) == nil) {
       [self debugWithFormat:@"could not get session object from context %@",
@@ -449,7 +449,7 @@ static inline id _getExtraVar(WOComponent *self, NSString *_key) {
   return (!self->componentFlags.reloadTemplates) ? YES : NO;
 }
 
-- (WOComponent *)pageWithName:(NSString *)_name {
+- (id)pageWithName:(NSString *)_name {
   NSArray           *languages;
   WOResourceManager *rm;
   WOComponent       *component;
@@ -520,7 +520,7 @@ static inline id _getExtraVar(WOComponent *self, NSString *_key) {
 - (void)setParent:(WOComponent *)_parent {
   self->parentComponent = _parent;
 }
-- (WOComponent *)parent {
+- (id)parent {
   return self->parentComponent;
 }
 
index aacc05997851cdf621ae8c4bef5e96faaa34f1a8..cfe9045841b16d41f5e5ad66aba249bbfce765b4 100644 (file)
@@ -98,7 +98,7 @@ static NSString *WOApplicationSuffix = nil;
 
 - (id)initWithRequest:(WORequest *)_request {
   if ((self = [super init])) {
-    unsigned char buf[24];
+    char buf[24];
     self->qpJoin = @"&amp;";
     
     sprintf(buf, "%03x%08x%08x", ++contextCount, (int)time(NULL), (int)self);
@@ -292,7 +292,7 @@ static NSString *WOApplicationSuffix = nil;
   ASSIGN(self->session, _session);
 }
 
-- (WOSession *)session {
+- (id)session {
   // in WO4 -session creates a new session if none is associated
   
   if (self->session == nil) {
@@ -364,7 +364,7 @@ static NSString *WOApplicationSuffix = nil;
 
 /* components */
 
-- (WOComponent *)component {
+- (id)component {
   return (self->componentStackCount > 0)
     ? self->componentStack[self->componentStackCount - 1]
     : nil;
@@ -374,7 +374,7 @@ static NSString *WOApplicationSuffix = nil;
   [_page ensureAwakeInContext:self];
   ASSIGN(self->page, _page);
 }
-- (WOComponent *)page {
+- (id)page {
   return self->page;
 }
 
@@ -985,12 +985,15 @@ void WOContext_leaveComponent(WOContext *self, WOComponent *_component) {
 
 /* DeprecatedMethodsInWO4 */
 
-- (WOApplication *)application {
+- (id)application {
   if (self->application == nil)
     self->application = [WOAppClass application];
 
-  if (self->application == nil)
-    NSLog(@"%s: missing application for context %@", __PRETTY_FUNCTION__, self);
+  if (self->application == nil) {
+    [self logWithFormat:
+           @"%s: missing application for context %@", 
+           __PRETTY_FUNCTION__, self];
+  }
   
   return self->application;
 }
index 947f56bb4380e175be2b5107369f435e89aa2a56..fa159822bfebf2d0a9d5a9b6c7893ae5868850b1 100644 (file)
   return [[self context] request];
 }
 
-- (WOSession *)session {
+- (id)session {
   return [[self context] session];
 }
 
-- (WOSession *)existingSession {
+- (id)existingSession {
   WOContext *ctx = [self context];
   
   /* check whether the context has a session */
 
 /* pages */
 
-- (WOComponent *)pageWithName:(NSString *)_name {
+- (id)pageWithName:(NSString *)_name {
   return [[WOApplication application]
                          pageWithName:_name
                          inContext:[self context]];
index bd74f22cbb164e0a58f200f4e298f1f0abb2b8f6..c1a7102ec5398c3a51b1422c7400f2efd2a567c0 100644 (file)
@@ -219,7 +219,7 @@ static Class FormElementClass = Nil;
   self->extraAttributes = ea;
 }
 
-- (WOElement *)template {
+- (id)template {
   return nil;
 }
 
index 236483ee79c841bfb18f7e20cb4232f6fa72513c..04dd92c8ba46e461b2de51fa99a47d0f42fe165f 100644 (file)
@@ -213,11 +213,11 @@ static id numStrings[100];
 @end /* WOElement(QueryString) */
 
 NGObjWeb_DECLARE id OWGetProperty(NSDictionary *_set, NSString *_name) {
-  id propValue = [_set objectForKey:_name];
-
-  if (propValue) {
-    propValue = RETAIN(propValue);
-    [(id)_set removeObjectForKey:_name];
+  register id propValue;
+  
+  if ((propValue = [_set objectForKey:_name]) != nil) {
+    propValue = [propValue retain];
+    [(NSMutableDictionary *)_set removeObjectForKey:_name];
   }
   return propValue;
 }
index 0f36211f29711bd09a95a667bbee1a70c4463bf8..9caf7763958c8a5580a42538917e4f94a0c3f4a6 100644 (file)
@@ -156,9 +156,7 @@ static BOOL logExpire = YES;
   }
 }
 
-- (WOSession *)restoreSessionWithID:(NSString *)_sid
-  request:(WORequest *)_request
-{
+- (id)restoreSessionWithID:(NSString *)_sid request:(WORequest *)_request {
   NSAutoreleasePool *pool;
   NSString *snp;
   WOSession *session = nil;
index 8cdc3da0a762764bc28814a8e5b0c4b9dc361c58..a6a5839af134e6d43f06e9e9ed13b0b1cdcf03e2 100644 (file)
@@ -256,17 +256,20 @@ static BOOL logStream = NO;
   [(NGActiveSocket *)self->socket setSendTimeout:[self sendTimeout]];
   [(NGActiveSocket *)self->socket setReceiveTimeout:[self receiveTimeout]];
   
-  if (self->socket) {
-    id bStr;
-    
-    bStr = [[NGBufferedStream alloc] initWithSource:self->socket];
-    if (logStream)
-      self->log = [[WORecordRequestStream alloc] initWithSource:bStr];
+  if (self->socket != nil) {
+    NGBufferedStream *bStr;
+    
+    bStr = [NGBufferedStream alloc]; // keep gcc happy
+    bStr = [bStr initWithSource:self->socket];
+    if (logStream) {
+      self->log = [WORecordRequestStream alloc]; // keep gcc happy
+      self->log = [(WORecordRequestStream *)self->log initWithSource:bStr];
+    }
     else
       self->log = nil;
     
-    self->io = 
-      [[NGCTextStream alloc] initWithSource:(id)(self->log?self->log:bStr)];
+    self->io = [NGCTextStream alloc]; // keep gcc happy
+    self->io = [self->io initWithSource:(id)(self->log ? self->log : bStr)];
     [bStr release]; bStr = nil;
   }
   
index e5b7c19c36b311a60455ebf8c0dcb9fff0be3af3..ff35427adfbcccf0ecf8b4221767f5a3712eae14 100644 (file)
@@ -127,8 +127,8 @@ WOMailDelivery *sharedInstance = nil;
   NSArray *to, *cc;
   FILE *toMail;
 
-  to = [_email objectForKey:@"to"];
-  cc = [_email objectForKey:@"cc"];
+  to = [(NSDictionary *)_email objectForKey:@"to"];
+  cc = [(NSDictionary *)_email objectForKey:@"cc"];
 
   [sendmail appendString:[[NSUserDefaults standardUserDefaults]
                                           stringForKey:@"WOSendMail"]];
@@ -137,55 +137,57 @@ WOMailDelivery *sharedInstance = nil;
   [sendmail appendString:@" "];
   [sendmail appendString:[cc componentsJoinedByString:@" "]];
 
-  if ((toMail = popen([sendmail cString], "w"))) {
+  if ((toMail = popen([sendmail cString], "w")) != NULL) {
     NSEnumerator *e = nil;
     id entry;
     NSString *tmp;
     
-    if ((tmp = [[_email objectForKey:@"from"] stringValue])) {
-      if (fprintf(toMail, "Reply-To: %s\n", [tmp cString]) < 0)
+    if ((tmp = [[(NSDictionary *)_email objectForKey:@"from"] stringValue])) {
+      if (fprintf(toMail, "Reply-To: %s\r\n", [tmp cString]) < 0)
         goto failed;
-      if (fprintf(toMail, "From: %s\n", [tmp cString]) < 0)
+      if (fprintf(toMail, "From: %s\r\n", [tmp cString]) < 0)
         goto failed;
     }
     
     e = [to objectEnumerator];
-    while ((entry = [e nextObject])) {
-      if (fprintf(toMail, "To:%s\n", [[entry stringValue] cString]) < 0)
+    while ((entry = [e nextObject]) != nil) {
+      if (fprintf(toMail, "To:%s\r\n", [[entry stringValue] cString]) < 0)
         goto failed;
     }
 
     e = [cc objectEnumerator];
-    while ((entry = [e nextObject])) {
-      if (fprintf(toMail, "Cc:%s\n", [[entry stringValue] cString]) < 0)
+    while ((entry = [e nextObject]) != nil) {
+      if (fprintf(toMail, "Cc:%s\r\n", [[entry stringValue] cString]) < 0)
         goto failed;
     }
     
-    if ((tmp = [[_email objectForKey:@"subject"] stringValue])) {
-      if (fprintf(toMail, "Subject:%s\n", [tmp cString]) < 0)
+    if ((tmp = [[(NSDictionary *)_email objectForKey:@"subject"] stringValue])) {
+      if (fprintf(toMail, "Subject:%s\r\n", [tmp cString]) < 0)
         goto failed;
     }
 
-    if ((tmp = [[_email objectForKey:@"content-type"] stringValue])) {
-      if (fprintf(toMail, "Content-type:%s\n", [tmp cString]) < 0)
+    if ((tmp = [[(NSDictionary *)_email objectForKey:@"content-type"] stringValue])) {
+      if (fprintf(toMail, "Content-type:%s\r\n", [tmp cString]) < 0)
         goto failed;
     }
-    if ((tmp = [[_email objectForKey:@"content-length"] stringValue])) {
-      if (fprintf(toMail, "Content-length:%s\n", [tmp cString]) < 0)
+    if ((tmp = [[(NSDictionary *)_email objectForKey:@"content-length"] stringValue])) {
+      if (fprintf(toMail, "Content-length:%s\r\n", [tmp cString]) < 0)
         goto failed;
     }
     
-    // end header
-    if (fprintf(toMail, "\n") < 0)
+    /* end header */
+    if (fprintf(toMail, "\r\n") < 0)
       goto failed;
 
-    // write body
+    /* write body */
     {
-      NSData *body = [_email objectForKey:@"body"];
+      NSData *body;
+      
+      body = [(NSDictionary *)_email objectForKey:@"body"];
       if (fwrite([body bytes], [body length], 1, toMail) < 0)
         goto failed;
     }
-    fprintf(toMail, "\n");
+    fprintf(toMail, "\r\n");
     pclose(toMail);
 
     return YES;
index 6d6170f65a7d0cbc89f95111b620bfb765660659..6756fa153af7cbe71d287aa0a043b393d55d51b5 100644 (file)
@@ -452,7 +452,7 @@ static __inline__ NSMutableData *_checkBody(WOMessage *self) {
   profile.appendC++;
 
   if (self->content == nil) _ensureBody(self);
-  if ((len = _value ? strlen(_value) : 0) == 0)
+  if ((len = _value ? strlen((char *)_value) : 0) == 0)
     return;
   
   switch (self->contentEncoding) {
@@ -468,7 +468,7 @@ static __inline__ NSMutableData *_checkBody(WOMessage *self) {
       /* worst case ... */
       NSString *s;
       
-      if ((s = [[NSString alloc] initWithCString:_value])) {
+      if ((s = [[NSString alloc] initWithCString:(char *)_value])) {
         self->addStr(self, @selector(appendContentString:), s);
         [s release];
       }
index 7e9a61cf315cf0324c505c6a691d45ca486a3191..b3d260bd785f66f65fc350e291b7398b6d8fc127 100644 (file)
@@ -90,7 +90,7 @@
   
   if (_p) {
     printf("%s", [_p cString]);
-    if (fh) fprintf(fh, "%s", [_p cString]);
+    if (fh != NULL) fprintf(fh, "%s", [_p cString]);
   }
   
   /* headers */
     id val;
     
     vals = [[_msg headersForKey:key] objectEnumerator];
-    while ((val = [vals nextObject])) {
-      s = [[val stringValue] cString];
+    while ((val = [vals nextObject]) != NULL) {
+      s = (unsigned char *)[[val stringValue] cString];
       printf("%s: %s\n", [key cString], s);
-      if (fh) fprintf(fh, "%s: %s\r\n", [key cString], s);
+      if (fh != NULL) fprintf(fh, "%s: %s\r\n", [key cString], s);
     }
   }
   
   /* content */
-  if ((s = [[_msg contentAsString] cString])) {
+  if ((s = (unsigned char *)[[_msg contentAsString] cString])) {
     printf("\n%s\n", s);
-    if (fh) fprintf(fh, "\r\n%s", s);
+    if (fh != NULL) fprintf(fh, "\r\n%s", s);
   }
   else {
     printf("\n");
-    if (fh) fprintf(fh, "\r\n");
+    if (fh != NULL) fprintf(fh, "\r\n");
   }
   
-  if (fh) fclose(fh);
+  if (fh != NULL) fclose(fh);
 }
 
 - (void)logRequest:(WORequest *)_rq {
index ce247324264780b55452579c39219030f75c40e3..9284a63eb13f73f3740deda3b6281c382d63f0c8 100644 (file)
@@ -203,7 +203,7 @@ _pathExists(WOResourceManager *self, NSFileManager *fm, NSString *path)
   return debugOn;
 }
 - (NSString *)loggingPrefix {
-  unsigned char buf[32];
+  char buf[32];
   sprintf(buf, "[wo-rm-0x%08X]", (unsigned)self);
   return [NSString stringWithCString:buf];
 }
@@ -1061,7 +1061,7 @@ _pathExists(WOResourceManager *self, NSFileManager *fm, NSString *path)
   return (WOElement *)[cdef template];
 }
 
-- (WOComponent *)pageWithName:(NSString *)_name languages:(NSArray *)_langs {
+- (id)pageWithName:(NSString *)_name languages:(NSArray *)_langs {
   /* 
      TODO: this appears to be deprecated since the WOComponent initializer
            is now -initWithContext: and we have no context over here ...
index 61ed41fd9978aeeab666c7ca9ae97a1ceb87bad9..b6de8a2091ef448c5dd1b6e8c80434456c114c1b 100644 (file)
@@ -156,11 +156,11 @@ static BOOL debugOn = NO;
     rmkey = [handlerPath objectAtIndex:0];
     if ([rmkey length] > 0) {
       WOResourceManager *rm;
-      id data;
+      NSDictionary *data;
       
       rm = [[WOApplication application] resourceManager];
       
-      if ((data = [rm _dataForKey:rmkey sessionID:nil])) {
+      if ((data = [rm _dataForKey:rmkey sessionID:nil]) != nil) {
         WOResponse *response;
         
         response = [WOResponse responseWithRequest:_request];
index 4df17b0e9cf2705ef2b307dc81eee90024675a0a..f78997e663dee80f640844e8290859b19f387ce2 100644 (file)
@@ -82,7 +82,7 @@ static BOOL          debugZip = NO;
 
 /* client caching */
 
-static __inline__ unsigned char *weekdayName(int dow) {
+static __inline__ char *weekdayName(int dow) {
   switch (dow) {
     case 0: return "Sun"; case 1: return "Mon"; case 2: return "Tue";
     case 3: return "Wed"; case 4: return "Thu"; case 5: return "Fri";
@@ -90,7 +90,7 @@ static __inline__ unsigned char *weekdayName(int dow) {
     default: return "UNKNOWN DAY OF WEEK !";
   }
 }
-static __inline__ unsigned char *monthName(int m) {
+static __inline__ char *monthName(int m) {
   switch (m) {
     case  1:  return "Jan"; case  2:  return "Feb"; case  3:  return "Mar";
     case  4:  return "Apr"; case  5:  return "May"; case  6:  return "Jun";
@@ -120,7 +120,7 @@ static __inline__ unsigned char *monthName(int m) {
   {
     NSCalendarDate *now;
     NSString *s;
-    unsigned char buf[32];
+    char buf[32];
     
     now = [[NSCalendarDate alloc] initWithTimeIntervalSinceNow:-3600.0];
     [now setTimeZone:gmt];
index 84fc9e236f314c335c9b036baecd02b53a1acf05..96647e8b9e73ce75b08954f6d287bb0a0229c125 100644 (file)
@@ -151,9 +151,7 @@ static BOOL logExpiredSessions = NO;
   [self->lock unlock];
 }
 
-- (WOSession *)restoreSessionWithID:(NSString *)_sid
-  request:(WORequest *)_request
-{
+- (id)restoreSessionWithID:(NSString *)_sid request:(WORequest *)_request {
   WOSession *session = nil;
 
   if ([_sid length] == 0)
index 30a962720045eeb032c663eac59f78374e9c8d97..8c17d610fd1b3c101f34980fe1ffef8a5487d604 100644 (file)
@@ -200,7 +200,7 @@ static Class NSDateClass = Nil;
   return self->isTerminating;
 }
 
-- (WOApplication *)application {
+- (id)application {
   if (self->application == nil)
     self->application = [WOApplication application];
   return self->application;
@@ -229,7 +229,7 @@ static Class NSDateClass = Nil;
 
 /* pages */
 
-- (WOComponent *)restorePageForContextID:(NSString *)_contextID {
+- (id)restorePageForContextID:(NSString *)_contextID {
   unsigned short i;
   unsigned       ctxHash;
   WOComponent    *page = nil;
index 5e1c5625e23c0c8aa9319b9f8e8f81aecb749b7a..a941360a93d7efcfa4fd11e1d9d531fd7f583de2 100644 (file)
@@ -49,9 +49,7 @@
 
 /* checkin/out */
 
-- (WOSession *)checkOutSessionWithSessionID:(NSString *)_sid
-  request:(WORequest *)_request
-{
+- (id)checkOutSessionWithSessionID:(NSString *)_sid request:(WORequest *)_rq {
   WOSession *session;
   *(&session) = nil;
   
@@ -87,7 +85,7 @@
   IS_DEPRECATED;
   [self saveSessionForContext:[_session context]];
 }
-- (WOSession *)restoreSessionWithID:(NSString *)_sid {
+- (id)restoreSessionWithID:(NSString *)_sid {
   IS_DEPRECATED;
   return [self restoreSessionWithID:_sid request:nil];
 }
@@ -97,9 +95,7 @@
 - (void)saveSessionForContext:(WOContext *)_context {
   [self subclassResponsibility:_cmd];
 }
-- (WOSession *)restoreSessionWithID:(NSString *)_sid
-  request:(WORequest *)_request
-{
+- (id)restoreSessionWithID:(NSString *)_sid request:(WORequest *)_request {
   [self subclassResponsibility:_cmd];
   return nil;
 }
index dba94fa583e96e1a31db203f11aeb2b3fbab0263..c76fb0cfa25eb6febe23aea2cae179f695c61513 100644 (file)
@@ -174,14 +174,14 @@ static int   maxUploadSize  = 0;
 
 static NSString *ContentLengthHeaderName = @"content-length";
 
-static NSString *stringForHeaderName(unsigned char *p) {
+static NSString *stringForHeaderName(char *p) { /* Note: arg is _not_ const */
   /* 
      process header name
      
      we try to be smart to avoid creation of NSString objects ...
   */
   register unsigned len;
-  register unsigned char c1;
+  register char c1;
   
   if ((len = strlen(p)) == 0)
     return @"";
@@ -438,7 +438,7 @@ static NSString *stringForHeaderName(unsigned char *p) {
   {
     unsigned char *t;
     
-    for (t = p; *t != '\0'; t++)
+    for (t = (unsigned char *)p; *t != '\0'; t++)
       *t = tolower(*t);
   }
   return [[NSString alloc] initWithCString:p];
@@ -456,7 +456,7 @@ static NSString *stringForHeaderName(unsigned char *p) {
     if (heavyDebugOn)
       printf("read header line: '%s'\n", self->lineBuffer);
     
-    if (strlen(self->lineBuffer) == 0) {
+    if (strlen((char *)self->lineBuffer) == 0) {
       /* found end of header */
       break;
     }
@@ -472,7 +472,7 @@ static NSString *stringForHeaderName(unsigned char *p) {
     }
     
     /* find key/value separator */
-    if ((v = index(p, ':')) == NULL) {
+    if ((v = (unsigned char *)index((char *)p, ':')) == NULL) {
       [self warnWithFormat:@"got malformed header line: '%s'",
               self->lineBuffer];
       continue;
@@ -486,7 +486,7 @@ static NSString *stringForHeaderName(unsigned char *p) {
 
     if (*v != '\0') {
       /* trim trailing spaces */
-      for (idx = strlen(v) - 1; idx >= 0; idx--) {
+      for (idx = strlen((char *)v) - 1; idx >= 0; idx--) {
         if ((v[idx] != ' ' && v[idx] != '\t'))
           break;
         
@@ -494,11 +494,11 @@ static NSString *stringForHeaderName(unsigned char *p) {
       }
     }
     
-    headerName  = stringForHeaderName(p);
-    headerValue = [[NSStringClass alloc] initWithCString:v];
+    headerName  = stringForHeaderName((char *)p);
+    headerValue = [[NSStringClass alloc] initWithCString:(char *)v];
     
     if (headerName == ContentLengthHeaderName)
-      self->clen = atoi(v);
+      self->clen = atoi((char *)v);
     
     if (headerName != nil || headerValue != nil) {
       if (self->headers == nil)
@@ -640,15 +640,15 @@ static NSString *stringForHeaderName(unsigned char *p) {
   //       body. The current implementation is far from optimal and only added
   //       for Mono compatibility (and actually produces the same behaviour
   //       like with HTTP/1.0 ...)
-  static unsigned char *contStatLine = 
+  static char *contStatLine = 
     "HTTP/1.0 100 Continue\r\n"
     "content-length: 0\r\n"
     "\r\n";
-  static unsigned char *failStatLine = 
+  static char *failStatLine = 
     "HTTP/1.0 417 Expectation Failed\r\n"
     "content-length: 0\r\n"
     "\r\n";
-  unsigned char *respline = NULL;
+  char *respline = NULL;
   BOOL ok = YES;
   
   [self debugWithFormat:@"process 100 continue on IO: %@", self->io];
@@ -699,11 +699,11 @@ static NSString *stringForHeaderName(unsigned char *p) {
   
   {
     /* sample line: "GET / HTTP/1.0" */
-    unsigned char *p, *t;
+    char *p, *t;
     
     /* parse method */
     
-    p = self->lineBuffer;
+    p = (char *)self->lineBuffer;
     if ((t = index(p, ' ')) == NULL) {
       [self logWithFormat:@"got broken request line '%s'", self->lineBuffer];
       return nil;
@@ -867,11 +867,11 @@ static NSString *stringForHeaderName(unsigned char *p) {
   
   {
     /* sample line: "HTTP/1.0 200 OK" */
-    unsigned char *p, *t;
+    char *p, *t;
     
     /* version */
     
-    p = self->lineBuffer;
+    p = (char *)self->lineBuffer;
     if ((t = index(p, ' ')) == NULL) {
       [self logWithFormat:@"got broken response line '%s'", self->lineBuffer];
       return nil;
index 8408c8b9b5b84c53012137fc953d8be7d265425e..58b0d62de45cf1b4face87c5646ce27421db81a1 100644 (file)
@@ -49,7 +49,7 @@
 
 @implementation WOStatisticsStore
 
-static unsigned char *monthAbbr[13] = {
+static char *monthAbbr[13] = {
   "Dec",
   "Jan", "Feb", "Mar", "Apr", "May", "Jun",
   "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"
@@ -100,7 +100,7 @@ static id mkuint(unsigned int i) {
 }
 static id mkdbl(double d) {
 #if 1
-  unsigned char buf[64];
+  char buf[64];
   sprintf(buf, "%.3f", d);
   return [NSStringClass stringWithCString:buf];
 #else
@@ -380,7 +380,7 @@ static id mkdbl(double d) {
   NSCalendarDate  *now;
   NSDate          *startDate;
   NSString        *tmp;
-  unsigned char   buf[64];
+  char            buf[64];
   
   request = [_context request];
   result  = [NSMutableString stringWithCapacity:256];
index 5c95c3581f4fd9d63802b84069b2c2baedcbd1a3..ce3706cd4ef50d978a0f57176d8a7f4a1fc6fc26 100644 (file)
@@ -82,8 +82,9 @@
           value = [NSNumber numberWithInt:[value intValue] * 1024];
         }
         
-        if (d == nil) d = [NSMutableDictionary dictionary];
-        [d setObject:value forKey:key];
+        if (d == nil) 
+         d = [NSMutableDictionary dictionaryWithCapacity:16];
+        [(NSMutableDictionary *)d setObject:value forKey:key];
       }
     }
     return d;