diff options
Diffstat (limited to 'searchlib')
-rw-r--r-- | searchlib/src/vespa/searchlib/parsequery/simplequerystack.cpp | 5 | ||||
-rw-r--r-- | searchlib/src/vespa/searchlib/parsequery/stackdumpiterator.cpp | 4 |
2 files changed, 5 insertions, 4 deletions
diff --git a/searchlib/src/vespa/searchlib/parsequery/simplequerystack.cpp b/searchlib/src/vespa/searchlib/parsequery/simplequerystack.cpp index 7fd773053d7..28fe392f9c0 100644 --- a/searchlib/src/vespa/searchlib/parsequery/simplequerystack.cpp +++ b/searchlib/src/vespa/searchlib/parsequery/simplequerystack.cpp @@ -159,6 +159,7 @@ SimpleQueryStack::StackbufToString(const vespalib::stringref &theBuf) const char *p = theBuf.begin(); const char *ep = theBuf.end(); uint64_t tmp(0); + int64_t tmpI64(0); uint8_t flags(0); while (p < ep) { vespalib::string metaStr; @@ -259,9 +260,9 @@ SimpleQueryStack::StackbufToString(const vespalib::stringref &theBuf) break; case ParseItem::ITEM_PURE_WEIGHTED_LONG: - tmp = vespalib::nbo::n2h(*reinterpret_cast<const uint64_t *>(p)); + tmpI64 = vespalib::nbo::n2h(*reinterpret_cast<const int64_t *>(p)); p += sizeof(uint64_t); - result.append(make_string("%c/%lu", _G_ItemName[type], tmp)); + result.append(make_string("%c/%ld", _G_ItemName[type], tmpI64)); break; case ParseItem::ITEM_PHRASE: diff --git a/searchlib/src/vespa/searchlib/parsequery/stackdumpiterator.cpp b/searchlib/src/vespa/searchlib/parsequery/stackdumpiterator.cpp index d8acfda93e2..b5f21f90763 100644 --- a/searchlib/src/vespa/searchlib/parsequery/stackdumpiterator.cpp +++ b/searchlib/src/vespa/searchlib/parsequery/stackdumpiterator.cpp @@ -180,9 +180,9 @@ SimpleQueryStackDumpIterator::next() _currArity = 0; break; case ParseItem::ITEM_PURE_WEIGHTED_LONG: - if (p + 8 > _bufEnd) return false; + if (p + sizeof(int64_t) > _bufEnd) return false; _generatedTerm.clear(); - _generatedTerm << vespalib::nbo::n2h(*(const uint64_t *)p); + _generatedTerm << vespalib::nbo::n2h(*reinterpret_cast<const int64_t *>(p)); _currTerm = _generatedTerm.c_str(); _currTermLen = _generatedTerm.size(); p += 8; |