--- JSON-XS/XS.xs 2007/06/06 14:52:49 1.35 +++ JSON-XS/XS.xs 2007/06/06 17:27:33 1.36 @@ -508,11 +508,11 @@ // we assume we can always read an IV as a UV if (SvUV (sv) & ~(UV)0x7fff) { - need (enc, 32); + need (enc, 64); enc->cur += SvIsUV(sv) - ? snprintf (enc->cur, 32, "%"UVuf, (UV)SvUVX (sv)) - : snprintf (enc->cur, 32, "%"IVdf, (IV)SvIVX (sv)); + ? snprintf (enc->cur, 64, "%"UVuf, (UV)SvUVX (sv)) + : snprintf (enc->cur, 64, "%"IVdf, (IV)SvIVX (sv)); } else {