Fix byte count in serialization of "F1000"
authorPerttu Ahola <celeron55@gmail.com>
Mon, 22 Aug 2011 19:17:26 +0000 (22:17 +0300)
committerPerttu Ahola <celeron55@gmail.com>
Mon, 22 Aug 2011 19:17:26 +0000 (22:17 +0300)
Some access violations and segfaults and strange behaviour might have
been caused by this.

src/utility.h

index 5950d7dfdcb072fa556424db865e8effd5c7b71e..ea7c118460a14ccc4d1f5fd78a8bbbf8fbc3316f 100644 (file)
@@ -236,17 +236,14 @@ inline u16 readU32(std::istream &is)
 
 inline void writeF1000(std::ostream &os, f32 p)
 {
-       char buf[2];
+       char buf[4];
        writeF1000((u8*)buf, p);
-       os.write(buf, 2);
+       os.write(buf, 4);
 }
 inline f32 readF1000(std::istream &is)
 {
-       char buf[2];
-       is.read(buf, 2);
-       // TODO: verify if this gets rid of the valgrind warning
-       //if(is.gcount() != 2)
-       //      return 0;
+       char buf[4];
+       is.read(buf, 4);
        return readF1000((u8*)buf);
 }