fix a bug in decode negative point number