diff --git a/includes/database/sqlite/schema.inc b/includes/database/sqlite/schema.inc
index a7871a577dd13fe9b164dd0f4b68fbb50e7a9d12..b6f95e4970de47885f66555234a1c89a659384b7 100644
--- a/includes/database/sqlite/schema.inc
+++ b/includes/database/sqlite/schema.inc
@@ -622,16 +622,13 @@ public function fieldSetNoDefault($table, $field) {
   }
 
   public function findTables($table_expression) {
-    // Don't use getPrefixInfo -- $table_expression includes the prefix.
-    list($prefix, $table) = explode('.', $table_expression);
-    if (empty($table)) {
-      $table = $prefix;
-      $prefix = NULL;
-    }
+    // Don't add the prefix, $table_expression already includes the prefix.
+    $info = $this->getPrefixInfo($table_expression, FALSE);
+
     // Can't use query placeholders because the query would have to be
     // :prefixsqlite_master, which does not work.
-    $result = db_query("SELECT name FROM " . ($prefix ? $prefix . '.' : '') . "sqlite_master WHERE name LIKE :table_name", array(
-      ':table_name' => $table,
+    $result = db_query("SELECT name FROM " . $info['schema'] . ".sqlite_master WHERE name LIKE :table_name", array(
+      ':table_name' => $info['table'],
     ));
     return $result->fetchAllKeyed(0, 0);
   }