Call data_seek(0) only if we've used DB_result::*row*() methods

This should fix HHVM where it throws 'Unable to jump to row 0 on MySQL result index X' error messages for ext/mysqli
diff --git a/system/database/DB_result.php b/system/database/DB_result.php
index 6aa4e92..b02d016 100644
--- a/system/database/DB_result.php
+++ b/system/database/DB_result.php
@@ -203,7 +203,7 @@
 			return $this->custom_result_object[$class_name];
 		}
 
-		$this->data_seek(0);
+		is_null($this->row_data) OR $this->data_seek(0);
 		$this->custom_result_object[$class_name] = array();
 
 		while ($row = $this->_fetch_object($class_name))
@@ -246,7 +246,7 @@
 			return $this->result_object;
 		}
 
-		$this->data_seek(0);
+		is_null($this->row_data) OR $this->data_seek(0);
 		while ($row = $this->_fetch_object())
 		{
 			$this->result_object[] = $row;
@@ -287,7 +287,7 @@
 			return $this->result_array;
 		}
 
-		$this->data_seek(0);
+		is_null($this->row_data) OR $this->data_seek(0);
 		while ($row = $this->_fetch_assoc())
 		{
 			$this->result_array[] = $row;