diff --git a/system/Validation/Rules.php b/system/Validation/Rules.php
index <HASH>..<HASH> 100644
--- a/system/Validation/Rules.php
+++ b/system/Validation/Rules.php
@@ -304,9 +304,9 @@ class Rules
 		// If the field is present we can safely assume that
 		// the field is here, no matter whether the corresponding
 		// search field is present or not.
-		$present = $this->required($data[$str] ?? null);
+		$present = $this->required($str ?? '');
 
-		if ($present === true)
+		if ($present)
 		{
 			return true;
 		}
@@ -326,8 +326,8 @@ class Rules
 
 		// Remove any keys with empty values since, that means they
 		// weren't truly there, as far as this is concerned.
-		$requiredFields = array_filter($requiredFields, function ($item) use ($data) {
-			return empty($data[$item]);
+		$requiredFields = array_filter($requiredFields, function ($item) use ($data, $str) {
+			return ! empty($data[$item]);
 		});
 
 		return empty($requiredFields);
Fix required_with rule bug. <I>