High priority bug fixes and version bump.
Fixed
-
#26: Fixed space allocation in
xLookupPutAllAsync()/xLookupRemoveAllAsync(). -
#28:
xGetAsDoubleAtIndex()returned integer rounded values when the field storedfloatordoubletype data. Now, it returns the floating-point value directly. -
Fixed memleak in
xLookupRemove(). -
Fixed memleak in
xDestroyLookup(). -
xLookupPut()did not returnX_NO_INITas expected if lookup table was not initialized. -
Fix potential buffer overflow at build time in
docedit.c(sprintf()tosnprintf()). -
Fixed max string size for 8-byte signed integer (-> 20 bytes + termination).
-
Fixed insufficient checking in
xIsFieldValid(). -
Fixed botched read loop in
xjsonParseFile(). -
Removed the unwanted
fclose()inxjsonParseFile(). Caller is responsible for closing the file after the call, as appropriate. -
Extra comma when printing
X_FLOATvalue to JSON. -
Fixed JSON unicode processing.
-
Fixed
PrintPrimitive()return value forX_CHAR(n)types inxjson.c. -
xGetAsLongAtIndex()andxGetAsDoubleAtIndex()for string/raw types.
Added
- Now installing
xmutex.hcontaining portable mutex macros.
Changed
-
#29: Use
snprintf()instead ofsprintf()provided it's available. (On older platforms prior to the C99 standard, it defaults tosprintf().) -
#29: Use
size_torlong(if needs to be signed) instead ofintfor string length parameters. -
Changed
xlookuphash algorithm to FNV-1a. -
Rounding instead of downcast from double in
xGetAsLongAtIndex(). -
CMake install to skip
.gitignoreinexamples/. -
Makefiledoc install to match CMake. -
CMake export targets from build-directory (for dependent builds)
-
examples/Makefileto work standalone, withoutconfig.mk.