--- CBOR-XS/XS.xs 2013/10/26 11:08:34 1.3 +++ CBOR-XS/XS.xs 2013/10/26 21:06:37 1.4 @@ -136,18 +136,18 @@ if (len < 24) *enc->cur++ = major | len; - else if (len < 0x100) + else if (len <= 0xff) { *enc->cur++ = major | 24; *enc->cur++ = len; } - else if (len < 0x10000) + else if (len <= 0xffff) { *enc->cur++ = major | 25; *enc->cur++ = len >> 8; *enc->cur++ = len; } - else if (len < 0x100000000) + else if (len <= 0xffffffff) { *enc->cur++ = major | 26; *enc->cur++ = len >> 24; @@ -155,7 +155,7 @@ *enc->cur++ = len >> 8; *enc->cur++ = len; } - else if (len) + else { *enc->cur++ = major | 27; *enc->cur++ = len >> 56;