X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fdata%2Fpsql-reader.c;h=f59bcb6dac8521cba01d026ca5cf1a54a524d367;hb=da333d7456a56655ebf4ce0e16e6cf468ab1c1af;hp=20aa57dbfc17f28a8c342e763e137c4580d35fcb;hpb=aac99fa281936102aea8d22dd77e197cdd878180;p=pspp-builds.git diff --git a/src/data/psql-reader.c b/src/data/psql-reader.c index 20aa57db..f59bcb6d 100644 --- a/src/data/psql-reader.c +++ b/src/data/psql-reader.c @@ -589,9 +589,28 @@ set_value (const struct psql_reader *r, case CASHOID: { - int32_t x; - GET_VALUE (&vptr, x); - val->f = x / 100.0; + /* Postgres 8.3 uses 64 bits. + Earlier versions use 32 */ + switch (length) + { + case 8: + { + int64_t x; + GET_VALUE (&vptr, x); + val->f = x / 100.0; + } + break; + case 4: + { + int32_t x; + GET_VALUE (&vptr, x); + val->f = x / 100.0; + } + break; + default: + val->f = SYSMIS; + break; + } } break;