From 70ad517c140285a668b692702f6b40eb2424c46f Mon Sep 17 00:00:00 2001 From: Uleat Date: Mon, 16 Sep 2019 02:18:19 -0400 Subject: [PATCH] Fix for linux double free error in RestoreRuleNotes() --- common/rulesys.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/common/rulesys.cpp b/common/rulesys.cpp index 4b3599113..094780be3 100644 --- a/common/rulesys.cpp +++ b/common/rulesys.cpp @@ -564,16 +564,16 @@ bool RuleManager::RestoreRuleNotes(Database *db) int update_count = 0; for (auto row = results.begin(); row != results.end(); ++row) { - const auto &rule = [&row]() { + auto rule = [](const char *rule_name) { - for (const auto &rule_iter : s_RuleInfo) { - if (strcasecmp(rule_iter.name, row[1]) == 0) { + for (auto rule_iter : s_RuleInfo) { + if (strcasecmp(rule_iter.name, rule_name) == 0) { return rule_iter; } } return s_RuleInfo[_IntRuleCount+_RealRuleCount+_BoolRuleCount]; - }(); + }(row[1]); if (strcasecmp(rule.name, row[1]) != 0) { continue;