# HG changeset patch # User jwe # Date 776925872 0 # Node ID ca6e72746161f1e775cc4cae706883beb244fb47 # Parent 5acc6db54c8f92be5429ad6cb09cc6e125d72578 [project @ 1994-08-15 04:44:32 by jwe] diff -r 5acc6db54c8f -r ca6e72746161 src/load-save.cc --- a/src/load-save.cc Mon Aug 15 04:32:29 1994 +0000 +++ b/src/load-save.cc Mon Aug 15 04:44:32 1994 +0000 @@ -437,6 +437,14 @@ LS_DO_READ (unsigned TWO_BYTE_INT, data, 2, len, is); break; + case LS_U_INT: + LS_DO_READ (unsigned FOUR_BYTE_INT, data, 4, len, is); + break; + + case LS_CHAR: + LS_DO_READ (signed char, data, 1, len, is); + break; + case LS_SHORT: LS_DO_READ (TWO_BYTE_INT, data, 2, len, is); break; @@ -1879,6 +1887,9 @@ return 0; } +// MAX_VAL and MIN_VAL are assumed to have integral values even though +// they are stored in doubles. + static save_type get_save_type (double max_val, double min_val) { @@ -1888,6 +1899,10 @@ st = LS_U_CHAR; else if (max_val < 65536 && min_val > -1) st = LS_U_SHORT; + else if (max_val < 4294967295 && min_val > -1) + st = LS_U_INT; + else if (max_val < 128 && min_val >= -128) + st = LS_CHAR; else if (max_val < 32768 && min_val >= -32768) st = LS_SHORT; else if (max_val < 2147483648 && min_val > -2147483648)