View Issue Details

IDProjectCategoryView StatusLast Update
0002814SOGoWeb Calendarpublic2014-06-25 15:31
Reporterbuzzdee Assigned Toludovic  
PriorityhighSeveritymajorReproducibilityalways
Status resolvedResolutionfixed 
Platformi386OSOpenBSDOS Version5.5
Product Version2.2.5 
Target Version2.2.6Fixed in Version2.2.6 
Summary0002814: exception accessing calendar view
Description

Following exception happens when I enter the calendar tab on the webinterface:

Jun 11 11:56:57 sogod [2533]: [ERROR] |assoc=currentDay.dayOfMonth| unsupported type 'l' !
EXCEPTION: <NSException: 0x7ab7e728> NAME:WORuntimeException REASON:in WOKeyPathAssociation <WOKeyPathAssociation[0x0x795a1b68]: keyPath=currentDay.dayOfMonth>: unsupported type 'l' INFO:(null)

Steps To Reproduce

This only happens on i386, connecting to the same database/ldap/imap like I did the test on amd64, where the problem doesn't occur.

This happens with version 2.2.4 and 2.2.5. Need to try older version on i386 to find out when this problem was introduced.

TagsNo tags attached.

Activities

buzzdee

buzzdee

2014-06-12 09:47

reporter   ~0007201

A full backtrace with sogo 2.2.5

(gdb) bt
#0 -[NSException raise] (self=0x84da9b88, _cmd=0x28be36c8 <.objc_selector_list+232>) at NSException.m:961
0000001 0x08d10995 in +[NSException raise:format:arguments:] (self=0x28be3590 <_OBJC_CLASS_NSException>,
_cmd=0x28be3610 <.objc_selector_list+48>, name=0x2b11d110 <.objc_str297>, format=0x2b11d5e8 <.objc_str373>,
argList=0xcfbedd88 "\bj\350\200l") at NSException.m:854
0000002 0x08d10873 in +[NSException raise:format:] (self=0x28be3590 <_OBJC_CLASS_NSException>, _cmd=0x2b11d708 <.objc_selector_list+184>,
name=0x2b11d110 <.objc_str297>, format=0x2b11d5e8 <.objc_str373>) at NSException.m:840
0000003 0x0b2ebf8e in _getComponentValue (self=0x80e86a08, object=0x80e86ba8, info=0x83219d9c) at WOKeyPathAssociation.m:590
0000004 0x0b2ef841 in _getValueN (self=0x80e86a08, _count=2, root=0x7b04f908) at WOKeyPathAssociation.m:720
0000005 0x0b2e9db9 in _getValue (self=0x80e86a08, root=0x7b04f908) at WOKeyPathAssociation.m:733
0000006 0x0b2e9d30 in -[WOKeyPathAssociation valueInComponent:] (self=0x80e86a08, _cmd=0x2b11ccf8 <.objc_selector_list+232>,
_component=0x7b04f908) at WOKeyPathAssociation.m:979
0000007 0x0b2e603e in -[WOAssociation stringValueInContext:] (self=0x80e86a08, _cmd=0x2b183cd8 <.objc_selector_list+88>, _ctx=0x78c8d408)
at WOAssociation.m:321
0000008 0x0b33d45a in -[_WOSimpleDynamicString appendToResponse:inContext:] (self=0x87d97588, _cmd=0x2b17f0d8 <.objc_selector_list+56>,
_resp=0x7f10ee08, _ctx=0x78c8d408) at WOString.m:129
0000009 0x0b316e8a in -[WOCompoundElement appendToResponse:inContext:] (self=0x87d97888, _cmd=0x2b1805d8 <.objc_selector_list+72>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOCompoundElement.m:245
0000010 0x0b321a92 in -[WOGenericContainer appendToResponse:inContext:] (self=0x7a787148, _cmd=0x216d3a38 <.objc_selector_list+72>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOGenericContainer.m:121
0000011 0x01776c99 in -[WEMonthTitle appendToResponse:inContext:] (self=0x85c778c8, _cmd=0x2b17f0d8 <.objc_selector_list+56>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WEMonthOverview.m:1299
0000012 0x0b316e8a in -[WOCompoundElement appendToResponse:inContext:] (self=0x85c77688, _cmd=0x216d3a38 <.objc_selector_list+72>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOCompoundElement.m:245
0000013 0x017736c0 in _generateCell (self=0x7dc64808, response=0x7f10ee08, ctx=0x78c8d408, key=0x216d3490 <.objc_str516>,
value=0x216d3300 <.objc_str484>, dateId=0x80e86ba8) at WEMonthOverview.m:365
0000014 0x01772c65 in -[WEMonthOverview appendToResponse:inContext:] (self=0x7dc64808, _cmd=0x2b17f0d8 <.objc_selector_list+56>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WEMonthOverview.m:800
0000015 0x0b316e8a in -[WOCompoundElement appendToResponse:inContext:] (self=0x87d97b08, _cmd=0x2b1805d8 <.objc_selector_list+72>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOCompoundElement.m:245
0000016 0x0b321a92 in -[WOGenericContainer appendToResponse:inContext:] (self=0x83219d08, _cmd=0x2b12dbc8 <.objc_selector_list+88>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOGenericContainer.m:121
0000017 0x0b2feb29 in -[WOTemplate appendToResponse:inContext:] (self=0x7eed1dc8, _cmd=0x2b0b7388 <.objc_selector_list+808>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOTemplate.m:119
0000018 0x0b276096 in -[WOComponent appendToResponse:inContext:] (self=0x7b04f908, _cmd=0x2b0dd728 <.objc_selector_list+168>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOComponent.m:928
0000019 0x0b2a9e37 in -[WOChildComponentReference appendToResponse:inContext:] (self=0x8827b408,
_cmd=0x2b1805d8 <.objc_selector_list+72>, _response=0x7f10ee08, _ctx=0x78c8d408) at WOChildComponentReference.m:181
0000020 0x0b321a92 in -[WOGenericContainer appendToResponse:inContext:] (self=0x831f30c8, _cmd=0x2b17f0d8 <.objc_selector_list+56>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOGenericContainer.m:121
0000021 0x0b316e8a in -[WOCompoundElement appendToResponse:inContext:] (self=0x87e046c8, _cmd=0x2b1805d8 <.objc_selector_list+72>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOCompoundElement.m:245
0000022 0x0b321a92 in -[WOGenericContainer appendToResponse:inContext:] (self=0x8827be08, _cmd=0x2b17f0d8 <.objc_selector_list+56>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOGenericContainer.m:121
0000023 0x0b316e8a in -[WOCompoundElement appendToResponse:inContext:] (self=0x7edfca08, _cmd=0x2b17ec08 <.objc_selector_list+24>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOCompoundElement.m:245
0000024 0x0b31476a in -[WOComponentContent appendToResponse:inContext:] (self=0x7be88b68, _cmd=0x2b1805d8 <.objc_selector_list+72>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOComponentContent.m:153
0000025 0x0b321a92 in -[WOGenericContainer appendToResponse:inContext:] (self=0x828dd908, _cmd=0x2b17f0d8 <.objc_selector_list+56>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOGenericContainer.m:121
0000026 0x0b316e8a in -[WOCompoundElement appendToResponse:inContext:] (self=0x7b980508, _cmd=0x2b17f450 <.objc_selector_list+208>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOCompoundElement.m:245
0000027 0x0b31871c in -[WOConditional appendToResponse:inContext:] (self=0x7a7ed648, _cmd=0x2b17f0d8 <.objc_selector_list+56>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOConditional.m:242
0000028 0x0b316e8a in -[WOCompoundElement appendToResponse:inContext:] (self=0x7ef3ef88, _cmd=0x2b17e308 <.objc_selector_list+200>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOCompoundElement.m:245
0000029 0x0b30e933 in -[WOBody appendToResponse:inContext:] (self=0x7b6869c8, _cmd=0x2b17f0d8 <.objc_selector_list+56>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOBody.m:157
0000030 0x0b316e8a in -[WOCompoundElement appendToResponse:inContext:] (self=0x7ef3e808, _cmd=0x2b1805d8 <.objc_selector_list+72>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOCompoundElement.m:245
0000031 0x0b321a92 in -[WOGenericContainer appendToResponse:inContext:] (self=0x878e81c8, _cmd=0x2b17f0d8 <.objc_selector_list+56>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOGenericContainer.m:121
0000032 0x0b316e8a in -[WOCompoundElement appendToResponse:inContext:] (self=0x7c548508, _cmd=0x2b17f450 <.objc_selector_list+208>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOCompoundElement.m:245
0000033 0x0b31871c in -[WOConditional appendToResponse:inContext:] (self=0x7b957788, _cmd=0x2b17f0d8 <.objc_selector_list+56>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOConditional.m:242
0000034 0x0b316e8a in -[WOCompoundElement appendToResponse:inContext:] (self=0x7c548708, _cmd=0x2b12dbc8 <.objc_selector_list+88>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOCompoundElement.m:245
0000035 0x0b2feb29 in -[WOTemplate appendToResponse:inContext:] (self=0x79397548, _cmd=0x2b0b7388 <.objc_selector_list+808>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOTemplate.m:119
0000036 0x0b276096 in -[WOComponent appendToResponse:inContext:] (self=0x7b775308, _cmd=0x2b0dd728 <.objc_selector_list+168>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOComponent.m:928
0000037 0x0b2a9e37 in -[WOChildComponentReference appendToResponse:inContext:] (self=0x83a15308,
_cmd=0x2b12dbc8 <.objc_selector_list+88>, _response=0x7f10ee08, _ctx=0x78c8d408) at WOChildComponentReference.m:181
0000038 0x0b2feb29 in -[WOTemplate appendToResponse:inContext:] (self=0x87b2a308, _cmd=0x2b0b7388 <.objc_selector_list+808>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOTemplate.m:119
0000039 0x0b276096 in -[WOComponent appendToResponse:inContext:] (self=0x7b40f808, _cmd=0x2b1bb038 <.objc_selector_list+296>,
_response=0x7f10ee08, _ctx=0x78c8d408) at WOComponent.m:928
0000040 0x0b36704f in -[SoDefaultRenderer renderComponent:inContext:] (self=0x7e5b24a8, _cmd=0x2b1bb050 <.objc_selector_list+320>,
_c=0x7b40f808, _ctx=0x78c8d408) at SoDefaultRenderer.m:139
0000041 0x0b367ea5 in -[SoDefaultRenderer renderObject:inContext:] (self=0x7e5b24a8, _cmd=0x2b1bc8c8 <.objc_selector_list+584>,
_object=0x7b40f808, _ctx=0x78c8d408) at SoDefaultRenderer.m:258
0000042 0x0b371ebd in -[SoObjectRequestHandler renderObject:inContext:] (self=0x82309388, _cmd=0x2b1bc8c8 <.objc_selector_list+584>,
_object=0x7b40f808, _ctx=0x78c8d408) at SoObjectRequestHandler.m:466
0000043 0x0b372ecd in -[SoObjectRequestHandler handleRequest:inContext:session:application:] (self=0x82309388,
_cmd=0x2b0f7e60 <.objc_selector_list+48>, _rq=0x843bb288, _ctx=0x78c8d408, _sn=0x0, app=0x86931208)
at SoObjectRequestHandler.m:616
0000044 0x0b2c4be7 in -[WORequestHandler handleRequest:] (self=0x82309388, _cmd=0x2b0b4bf8 <.objc_selector_list+8>, _request=0x843bb288)
at WORequestHandler.m:237
0000045 0x0b270051 in -[WOCoreApplication dispatchRequest:usingHandler:] (self=0x86931208, _cmd=0x2b0b4e18 <.objc_selector_list+552>,
_request=0x843bb288, handler=0x82309388) at WOCoreApplication.m:712
0000046 0x0b2704c4 in -[WOCoreApplication dispatchRequest:] (self=0x86931208, _cmd=0x382a4928 <.objc_selector_list+104>,
_request=0x843bb288) at WOCoreApplication.m:752
0000047 0x182a9ac9 in -[SOGo dispatchRequest:] (self=0x86931208, _cmd=0x2b18f078 <.objc_selector_list+856>, _request=0x843bb288)
at SOGo.m:453
0000048 0x0b35aee6 in -[WOHttpTransaction _run] (self=0x78a83b88, _cmd=0x2b18eff0 <.objc_selector_list+720>) at WOHttpTransaction.m:596
0000049 0x0b35b372 in -[WOHttpTransaction run] (self=0x78a83b88, _cmd=0x2b18e308 <.objc_selector_list+24>) at WOHttpTransaction.m:649
0000050 0x0b3550db in -[WOHttpAdaptor runConnection:] (self=0x870b4448, _cmd=0x2b18e2f8 <.objc_selector_list+8>, _socket=0x82ffb608)
at WOHttpAdaptor.m:367
0000051 0x0b3553b4 in -[WOHttpAdaptor _handleAcceptedConnection:] (self=0x870b4448, _cmd=0x2b18e320 <.objc_selector_list+48>,
_connection=0x82ffb608) at WOHttpAdaptor.m:401
0000052 0x0b35593f in -[WOHttpAdaptor _handleConnection:] (self=0x870b4448, _cmd=0x2b18e520 <.objc_selector_list+560>,
connection=0x82ffb608) at WOHttpAdaptor.m:460
0000053 0x0b355f7a in -[WOHttpAdaptor acceptConnection:] (self=0x870b4448, _cmd=0x2b18e370 <.objc_selector_list+128>,
_notification=0x7f45a768) at WOHttpAdaptor.m:521
0000054 0x08d8fb76 in -[NSObject performSelector:withObject:] (self=0x870b4448, _cmd=0x28bf36c0 <.objc_selector_list+144>,
aSelector=0x2b18e370 <.objc_selector_list+128>, anObject=0x7f45a768) at NSObject.m:2034
0000055 0x08d757a2 in -[NSNotificationCenter _postAndRelease:] (self=0x85081408, _cmd=0x28bf3700 <.objc_selector_list+208>,
notification=0x7f45a768) at NSNotificationCenter.m:1190
0000056 0x08d760ae in -[NSNotificationCenter postNotificationName:object:userInfo:] (self=0x85081408,
_cmd=0x28bf3688 <.objc_selector_list+88>, name=0x26a9d050 <.objc_str>, object=0x870b4548, info=0x0) at NSNotificationCenter.m:1250
0000057 0x08d75f3c in -[NSNotificationCenter postNotificationName:object:] (self=0x85081408, _cmd=0x26a9d080 <.objc_selector_list+16>,
name=0x26a9d050 <.objc_str>, object=0x870b4548) at NSNotificationCenter.m:1230
0000058 0x06afc345 in -[NSObject(FileObjectWatcher) receivedEvent:type:extra:forMode:] (self=0x870b4548,
_cmd=0x28c3fa90 <.objc_selector_list+112>, _fdData=0x6, _type=ET_RDESC, _extra=0x6, _mode=0x28c04000 <.objc_str>)
at NSRunLoop+FileObjects.m:57
0000059 0x08f26441 in -[GSRunLoopCtxt pollUntil:within:] (self=0x83889688, _cmd=0x28c044d8 <.objc_selector_list+648>, milliseconds=29986,
contexts=0x7c722f48) at GSRunLoopCtxt.m:639
0000060 0x08de9115 in -[NSRunLoop acceptInputForMode:beforeDate:] (self=0x7c62a3e8, _cmd=0x28c04278 <.objc_selector_list+40>,
mode=0x28c04000 <.objc_str>, limit_date=0x7c3a4888) at NSRunLoop.m:1214
0000061 0x08de96db in -[NSRunLoop runMode:beforeDate:] (self=0x7c62a3e8, _cmd=0x2b0b4f10 <.objc_selector_list+800>,
mode=0x28c04000 <.objc_str>, date=0x7d32cbe8) at NSRunLoop.m:1275
0000062 0x0b26f619 in -[WOCoreApplication run] (self=0x86931208, _cmd=0x382a4c00 <.objc_selector_list+832>) at WOCoreApplication.m:584
0000063 0x182a8d97 in -[SOGo run] (self=0x86931208, _cmd=0x2b0dbfa0 <.objc_selector_list>) at SOGo.m:277
0000064 0x0b2a8c5d in WOApplicationMain (_appClassName=0x382a39d0 <.objc_str>, argc=7, argv=0xcfbf1b24) at WOApplicationMain.m:42
0000065 0x0b2d46f9 in WOWatchDogApplicationMain (appName=0x382a39d0 <.objc_str>, argc=7, argv=0xcfbf1b24)
at WOWatchDogApplicationMain.m:1048
0000066 0x182a7dba in gnustep_base_user_main (argc=7, argv=0xcfbf1b24, env=0xcfbf1b44) at sogod.m:53
0000067 0x08dc7547 in main (argc=7, argv=0xcfbf1b24, env=0xcfbf1b44) at NSProcessInfo.m:991
0000068 0x182a7a38 in _start ()

buzzdee

buzzdee

2014-06-12 14:49

reporter   ~0007207

I have compiled and linked sogo against libobjc2-1.7.

Libobjc2 1.7 defines _C_LNG and _C_ULNG in objc/runtime.h to be of type 'l' or 'L' respectively. It seems, NSInteger is of type 'l' on i386 with libobjc2.

Unfortunately SOPEs WOKeyPathAssociation.m doesn't handle such types, and therefore throws such exception.

Attached patch updates WOKeyPathAssociation.m to being able to handle long and unsigned long types.

patch works for me on i386, and also tested on 64 Bit amd64.

can it please be considered to be added to SOPE.

While there, it fixes a few other minor compilation warnings that clang produces.

buzzdee

buzzdee

2014-06-12 14:49

reporter  

patch-sope-appserver_NGObjWeb_Associations_WOKeyPathAssociation_m (5,418 bytes)   
$OpenBSD$

fix for bug: http://www.sogo.nu/bugs/view.php?id=2814
and few other compiler warnings

--- sope-appserver/NGObjWeb/Associations/WOKeyPathAssociation.m.orig	Thu Jun  5 19:40:06 2014
+++ sope-appserver/NGObjWeb/Associations/WOKeyPathAssociation.m	Thu Jun 12 20:40:32 2014
@@ -109,6 +109,8 @@ typedef union {
   unsigned char  (*ucmethod)(id, SEL);
   int            (*imethod) (id, SEL);
   unsigned int   (*uimethod)(id, SEL);
+  long		 (*lmethod) (id, SEL);
+  unsigned long	 (*ulmethod) (id, SEL);
   long long      (*llmethod) (id, SEL);
   unsigned long long (*ullmethod)(id, SEL);
   short          (*smethod) (id, SEL);
@@ -125,6 +127,8 @@ typedef union {
   void (*ucmethod) (id, SEL, unsigned char);
   void (*imethod)  (id, SEL, int);
   void (*uimethod) (id, SEL, unsigned int);
+  void (*lmethod)  (id, SEL, long);
+  void (*ulmethod) (id, SEL, unsigned long);
   void (*llmethod) (id, SEL, long long);
   void (*ullmethod) (id, SEL, unsigned long long);
   void (*smethod)  (id, SEL, short);
@@ -156,6 +160,8 @@ typedef union {
   const char     *cstr;
   int            sint;
   unsigned int   uint;
+  long           longt;
+  unsigned long  ulongt;
   long long      llong;
   unsigned long long ullong;
   short          ss;
@@ -559,6 +565,13 @@ static WOReturnValueHolder _getComponentValue(WOKeyPat
             retValue.uint = info->access.uimethod(object, info->extra.sel.get);
             break;
 
+          case _C_LNG:
+            retValue.longt = info->access.lmethod(object, info->extra.sel.get);
+            break;
+          case _C_ULNG:
+            retValue.ulongt = info->access.ulmethod(object, info->extra.sel.get);
+            break;
+
           case _C_LNG_LNG:
             retValue.llong = info->access.llmethod(object, info->extra.sel.get);
             break;
@@ -665,6 +678,12 @@ static inline id _objectify(unsigned char _type, WORet
     case _C_UINT:
       result = uintNumObj(_value->uint);
       break;
+    case _C_LNG:
+      result = [NumberClass numberWithLong:_value->longt];
+      break;
+    case _C_ULNG:
+      result = [NumberClass numberWithUnsignedLong:_value->ulongt];
+      break;
     case _C_LNG_LNG:
       result = [NumberClass numberWithLongLong:_value->llong];
       break;
@@ -852,6 +871,13 @@ static BOOL _setValue(WOKeyPathAssociation *self, id _
             sm.uimethod(object, setSel, [_value unsignedIntValue]);
             break;
 
+          case _C_LNG:
+            sm.lmethod(object, setSel, [_value longValue]);
+            break;
+          case _C_ULNG:
+            sm.ulmethod(object, setSel, [_value unsignedLongValue]);
+            break;
+
           case _C_LNG_LNG:
             sm.llmethod(object, setSel, [_value longLongValue]);
             break;
@@ -1049,7 +1075,7 @@ static BOOL _setValue(WOKeyPathAssociation *self, id _
             break;
           }
           case _C_UCHR: {
-            if ((_value < 0) || (_value > 255))
+            if (_value > 255)
               [self errorWithFormat:
 		      @"value (%i) out of range for uchar!", _value];
             sm.ucmethod(_wo, setSel, (unsigned char)_value);
@@ -1063,6 +1089,14 @@ static BOOL _setValue(WOKeyPathAssociation *self, id _
             sm.uimethod(_wo, setSel, (unsigned int)_value);
             break;
           }
+          case _C_LNG: {
+            sm.lmethod(_wo, setSel, (long)_value);
+            break;
+          }
+          case _C_ULNG: {
+            sm.ulmethod(_wo, setSel, (unsigned long)_value);
+            break;
+          }
           case _C_LNG_LNG: {
             sm.llmethod(_wo, setSel, (long long)_value);
             break;
@@ -1187,6 +1221,14 @@ static BOOL _setValue(WOKeyPathAssociation *self, id _
             sm.uimethod(_wo, setSel, (unsigned int)_value);
             break;
           }
+          case _C_LNG: {
+            sm.lmethod(_wo, setSel, (long)_value);
+            break;
+          }
+          case _C_ULNG: {
+            sm.ulmethod(_wo, setSel, (unsigned long)_value);
+            break;
+          }
           case _C_LNG_LNG: {
             sm.llmethod(_wo, setSel, (long long)_value);
             break;
@@ -1299,6 +1341,12 @@ static BOOL _setValue(WOKeyPathAssociation *self, id _
             sm.uimethod(_wo, setSel, (unsigned int)_value);
             break;
           }
+          case _C_LNG:
+            sm.lmethod(_wo, setSel, (long)_value);
+            break;
+          case _C_ULNG:
+            sm.ulmethod(_wo, setSel, (unsigned long)_value);
+            break;
           case _C_LNG_LNG:
             sm.llmethod(_wo, setSel, (long long)_value);
             break;
@@ -1397,10 +1445,10 @@ static BOOL _setValue(WOKeyPathAssociation *self, id _
       return [StringClass stringWithFormat:@"%d", retValue.sint];
     case _C_ULNG_LNG:
       if (IS_NUMSTR(retValue.ullong)) return numStrings[retValue.ullong];
-      return [StringClass stringWithFormat:@"%ull", retValue.ullong];
+      return [StringClass stringWithFormat:@"%llu", retValue.ullong];
     case _C_LNG_LNG:
       if (IS_NUMSTR(retValue.llong)) return numStrings[retValue.llong];
-      return [StringClass stringWithFormat:@"%ll", retValue.llong];
+      return [StringClass stringWithFormat:@"%lli", retValue.llong];
     case _C_UCHR:
       if (IS_UNUMSTR(retValue.c)) return numStrings[retValue.c];
       return [StringClass stringWithFormat:@"%d", (int)retValue.c];
ludovic

ludovic

2014-06-25 15:31

administrator   ~0007241

Fix pushed: https://github.com/inverse-inc/sope/commit/5f94d915eff8bfc46a3f6cb9cb5a8577ee5dede4

Thanks!

Issue History

Date Modified Username Field Change
2014-06-11 10:35 buzzdee New Issue
2014-06-12 09:47 buzzdee Note Added: 0007201
2014-06-12 14:49 buzzdee Note Added: 0007207
2014-06-12 14:49 buzzdee File Added: patch-sope-appserver_NGObjWeb_Associations_WOKeyPathAssociation_m
2014-06-16 15:34 ludovic Target Version => 2.2.6
2014-06-25 15:31 ludovic Note Added: 0007241
2014-06-25 15:31 ludovic Status new => resolved
2014-06-25 15:31 ludovic Fixed in Version => 2.2.6
2014-06-25 15:31 ludovic Resolution open => fixed
2014-06-25 15:31 ludovic Assigned To => ludovic