Fixed a bug (#4561) where orhaving() wasn't properly passing values.

Removed some unused variables from the code (#4563).

Fixed a bug where having() was not adding an = into the statement (#4568).
diff --git a/system/database/DB_active_rec.php b/system/database/DB_active_rec.php
index dcf9d38..05a0435 100644
--- a/system/database/DB_active_rec.php
+++ b/system/database/DB_active_rec.php
@@ -804,7 +804,7 @@
 

 	function orhaving($key, $value = '', $escape = TRUE)

 	{

-		return $this->or_having($key, $value = '', $escape);

+		return $this->or_having($key, $value, $escape);

 	}	

 	// --------------------------------------------------------------------

 

@@ -852,7 +852,11 @@
 				$k = $this->_protect_identifiers($k);

 			}

 

-			

+			if ( ! $this->_has_operator($k))

+			{

+				$k .= ' = ';

+			}

+

 			if ($v != '')

 			{

 				$v = ' '.$this->escape_str($v);

diff --git a/system/libraries/Email.php b/system/libraries/Email.php
index ab3a248..8eb47dc 100644
--- a/system/libraries/Email.php
+++ b/system/libraries/Email.php
@@ -1281,7 +1281,6 @@
 	{

 		$float = $this->bcc_batch_size -1;

 

-		$flag = 0;

 		$set = "";

 

 		$chunk = array();

diff --git a/system/libraries/Router.php b/system/libraries/Router.php
index 6e705f8..c80830f 100644
--- a/system/libraries/Router.php
+++ b/system/libraries/Router.php
@@ -252,7 +252,6 @@
 

 		// Turn the segment array into a URI string

 		$uri = implode('/', $this->uri->segments);

-		$num = count($this->uri->segments);

 

 		// Is there a literal match?  If so we're done

 		if (isset($this->routes[$uri]))