]> git.ipfire.org Git - thirdparty/vectorscan.git/commitdiff
rose: guard writeNfaInfo from zero NFAs
authorJustin Viiret <justin.viiret@intel.com>
Mon, 6 Mar 2017 22:41:51 +0000 (09:41 +1100)
committerMatthew Barr <matthew.barr@intel.com>
Wed, 26 Apr 2017 05:16:03 +0000 (15:16 +1000)
src/rose/rose_build_bytecode.cpp

index 4b35e9e59e63b9e481f7d71db9b78e171961dc3e..bce26a100cc2e3c4aae21b66067204ec9f2a51e3 100644 (file)
@@ -2695,9 +2695,13 @@ void writeLeftInfo(build_context &bc, RoseEngine &proto,
 static
 void writeNfaInfo(const RoseBuildImpl &build, build_context &bc,
                   RoseEngine &proto, const set<u32> &no_retrigger_queues) {
+    const u32 queue_count = build.qif.allocated_count();
+    if (!queue_count) {
+        return;
+    }
+
     auto ekey_lists = buildSuffixEkeyLists(build, bc, build.qif);
 
-    const u32 queue_count = build.qif.allocated_count();
     vector<NfaInfo> infos(queue_count);
     memset(infos.data(), 0, sizeof(NfaInfo) * queue_count);