Bläddra i källkod

missing break in case YYEncodingTypeInt64\ losing accuracy of NSDecimalNumber

xinzhengzhang 9 år sedan
förälder
incheckning
4a3a40faa9
1 ändrade filer med 2 tillägg och 1 borttagningar
  1. 2 1
      YYModel/NSObject+YYModel.m

+ 2 - 1
YYModel/NSObject+YYModel.m

@@ -572,7 +572,8 @@ static force_inline void ModelSetNumberToProperty(__unsafe_unretained id model,
             ((void (*)(id, SEL, uint32_t))(void *) objc_msgSend)((id)model, meta->_setter, (uint32_t)num.unsignedIntValue);
             ((void (*)(id, SEL, uint32_t))(void *) objc_msgSend)((id)model, meta->_setter, (uint32_t)num.unsignedIntValue);
         } break;
         } break;
         case YYEncodingTypeInt64: {
         case YYEncodingTypeInt64: {
-            ((void (*)(id, SEL, int64_t))(void *) objc_msgSend)((id)model, meta->_setter, (int64_t)num.longLongValue);
+            ((void (*)(id, SEL, int64_t))(void *) objc_msgSend)((id)model, meta->_setter, (int64_t)num.stringValue.longLongValue);
+            break;
         }
         }
         case YYEncodingTypeUInt64: {
         case YYEncodingTypeUInt64: {
             ((void (*)(id, SEL, uint64_t))(void *) objc_msgSend)((id)model, meta->_setter, (uint64_t)num.unsignedLongLongValue);
             ((void (*)(id, SEL, uint64_t))(void *) objc_msgSend)((id)model, meta->_setter, (uint64_t)num.unsignedLongLongValue);