diff options
Diffstat (limited to 'src/mongo/db/exec/sbe/values/value.h')
-rw-r--r-- | src/mongo/db/exec/sbe/values/value.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/mongo/db/exec/sbe/values/value.h b/src/mongo/db/exec/sbe/values/value.h index 3d325a7e568..44d092d8186 100644 --- a/src/mongo/db/exec/sbe/values/value.h +++ b/src/mongo/db/exec/sbe/values/value.h @@ -1033,7 +1033,9 @@ inline size_t getBSONBinDataSize(TypeTags tag, Value val) { inline BinDataType getBSONBinDataSubtype(TypeTags tag, Value val) { invariant(tag == TypeTags::bsonBinData); - return static_cast<BinDataType>((getRawPointerView(val) + sizeof(uint32_t))[0]); + uint8_t subtype = + ConstDataView(getRawPointerView(val) + sizeof(uint32_t)).read<LittleEndian<uint8_t>>(); + return static_cast<BinDataType>(subtype); } inline uint8_t* getBSONBinData(TypeTags tag, Value val) { |