summaryrefslogtreecommitdiff
path: root/cpp/src/qmf/ValueImpl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/qmf/ValueImpl.cpp')
-rw-r--r--cpp/src/qmf/ValueImpl.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/cpp/src/qmf/ValueImpl.cpp b/cpp/src/qmf/ValueImpl.cpp
index 652b99cae9..f13e1a231e 100644
--- a/cpp/src/qmf/ValueImpl.cpp
+++ b/cpp/src/qmf/ValueImpl.cpp
@@ -42,8 +42,8 @@ ValueImpl::ValueImpl(Typecode t, Buffer& buf) : typecode(t)
case TYPE_BOOL : value.boolVal = (buf.getOctet() != 0); break;
case TYPE_FLOAT : value.floatVal = buf.getFloat(); break;
case TYPE_DOUBLE : value.doubleVal = buf.getDouble(); break;
- case TYPE_INT8 : value.s32 = (int32_t) buf.getOctet(); break;
- case TYPE_INT16 : value.s32 = (int32_t) buf.getShort(); break;
+ case TYPE_INT8 : value.s32 = (int32_t) ((int8_t) buf.getOctet()); break;
+ case TYPE_INT16 : value.s32 = (int32_t) ((int16_t) buf.getShort()); break;
case TYPE_INT32 : value.s32 = (int32_t) buf.getLong(); break;
case TYPE_INT64 : value.s64 = buf.getLongLong(); break;
case TYPE_UUID : buf.getBin128(value.uuidVal); break;