summaryrefslogtreecommitdiffstats
path: root/system/database/DB_query_builder.php
diff options
context:
space:
mode:
Diffstat (limited to 'system/database/DB_query_builder.php')
-rw-r--r--system/database/DB_query_builder.php12
1 files changed, 8 insertions, 4 deletions
diff --git a/system/database/DB_query_builder.php b/system/database/DB_query_builder.php
index f11f84627..4e37e4c03 100644
--- a/system/database/DB_query_builder.php
+++ b/system/database/DB_query_builder.php
@@ -663,11 +663,15 @@ abstract class CI_DB_query_builder extends CI_DB_driver {
}
else
{
- $operator = trim($this->_get_operator($k));
-
- if ($operator === '<>' OR $operator === '!=')
+ $operator = $this->_get_operator($k);
+ if (stripos($operator, 'NULL') === FALSE)
{
- $k = str_replace($operator, ' IS NOT NULL', $k);
+ $op = strrpos($k, $operator);
+ if (strlen($k) === ($op + strlen($operator)))
+ {
+ $operator = strtr($operator, array('<>' => 'IS NOT', '!=' => 'IS NOT'));
+ $k = substr($k, 0, $op).rtrim($operator).' NULL';
+ }
}
}