diff --git a/reader.cc b/reader.cc
index 587c391857cfb84416a953199cf6a0945c311c6e..21cef1dd1882ec8fcdda0033f05821e6f67a538c 100644 (file)
--- a/reader.cc
+++ b/reader.cc
return out;
}
+SHORTINT Reader::readSInt() {
+ SHORTINT buf;
+ char *bufPtr = (char*)&buf;
+ d_rider.read(bufPtr, 2);
+ if (isLittleEndian()) {
+ return buf;
+ } else {
+ SHORTINT out;
+ char *outPtr = (char *)&out;
+ outPtr[0] = bufPtr[1]; outPtr[1] = bufPtr[0];
+ return out;
+ }
+}
+
INTEGER Reader::readInt() {
INTEGER buf;
char *bufPtr = (char*)&buf;