Fix incomplete and skipped test
diff --git a/system/libraries/Table.php b/system/libraries/Table.php
index fb154e5..8f6ac8d 100644
--- a/system/libraries/Table.php
+++ b/system/libraries/Table.php
@@ -102,7 +102,7 @@
 	 */
 	public function make_columns($array = array(), $col_limit = 0)
 	{
-		if ( ! is_array($array) OR count($array) === 0)
+		if ( ! is_array($array) OR count($array) === 0 OR ! is_int($col_limit))
 		{
 			return FALSE;
 		}
@@ -395,7 +395,7 @@
 		// First generate the headings from the table column names
 		if (count($this->heading) === 0)
 		{
-			if ( ! method_exists($query, 'list_fields'))
+			if ( ! is_callable(array($query, 'list_fields')))
 			{
 				return FALSE;
 			}