summaryrefslogtreecommitdiffstats
path: root/fsa
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@online.no>2022-12-15 13:59:55 +0100
committerTor Egge <Tor.Egge@online.no>2022-12-15 13:59:55 +0100
commitf95c6f36afa7ff2929205b86ab2f1e674e12b1d2 (patch)
tree597085abc315e6da6b5b54341ce9b0a5f15d6823 /fsa
parenta5ccdfb0c8180c0ec98ec258a02615ae58c71641 (diff)
Avoid buffer overflow with empty automaton.
Diffstat (limited to 'fsa')
-rw-r--r--fsa/src/vespa/fsa/automaton.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/fsa/src/vespa/fsa/automaton.cpp b/fsa/src/vespa/fsa/automaton.cpp
index 88777f4e198..ee80fee0db1 100644
--- a/fsa/src/vespa/fsa/automaton.cpp
+++ b/fsa/src/vespa/fsa/automaton.cpp
@@ -341,6 +341,10 @@ void Automaton::PackedAutomaton::finalize()
_packed_idx[i] = _pack_map[_packed_ptr[i]];
}
}
+ if (_blob_used == 0) {
+ _packable = false;
+ return;
+ }
// compact blobs if the size is constant
std::map<uint32_t,uint32_t> bcomp;