From 9933edc718b3ec40a0e2d62baa0adeee09792318 Mon Sep 17 00:00:00 2001 From: Miroslav Stampar Date: Tue, 12 Jul 2011 22:28:19 +0000 Subject: [PATCH] optimization of reflective removal mechanism --- lib/core/common.py | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/lib/core/common.py b/lib/core/common.py index 541553807..d04172fbe 100644 --- a/lib/core/common.py +++ b/lib/core/common.py @@ -2595,22 +2595,22 @@ def removeReflectiveValues(content, payload, suppressWarning=False): while 2 * REFLECTED_NON_ALPHA_NUM_REGEX in regex: regex = regex.replace(2 * REFLECTED_NON_ALPHA_NUM_REGEX, REFLECTED_NON_ALPHA_NUM_REGEX) - if reduce(lambda x,y: x if x else y, regex.split(REFLECTED_NON_ALPHA_NUM_REGEX)).lower() in content.lower(): # fast optimization check + if all([part.lower() in content.lower() for part in regex.split(REFLECTED_NON_ALPHA_NUM_REGEX)]): # fast optimization check retVal = re.sub(regex, REFLECTED_VALUE_MARKER, content, re.I) - if retVal != content: - kb.reflectiveCounters[REFLECTIVE_COUNTER.HIT] += 1 - if not suppressWarning: - debugMsg = "reflective value found and filtered out" - logger.debug(debugMsg) + if retVal != content: + kb.reflectiveCounters[REFLECTIVE_COUNTER.HIT] += 1 + if not suppressWarning: + debugMsg = "reflective value found and filtered out" + logger.debug(debugMsg) - elif not kb.testMode and not kb.reflectiveCounters[REFLECTIVE_COUNTER.HIT]: - kb.reflectiveCounters[REFLECTIVE_COUNTER.MISS] += 1 - if kb.reflectiveCounters[REFLECTIVE_COUNTER.MISS] > REFLECTIVE_MISS_THRESHOLD: - kb.reflectiveMechanism = False - if not suppressWarning: - debugMsg = "turning off reflection removal mechanism (for optimization purposes)" - logger.debug(debugMsg) + elif not kb.testMode and not kb.reflectiveCounters[REFLECTIVE_COUNTER.HIT]: + kb.reflectiveCounters[REFLECTIVE_COUNTER.MISS] += 1 + if kb.reflectiveCounters[REFLECTIVE_COUNTER.MISS] > REFLECTIVE_MISS_THRESHOLD: + kb.reflectiveMechanism = False + if not suppressWarning: + debugMsg = "turning off reflection removal mechanism (for optimization purposes)" + logger.debug(debugMsg) return retVal