diff --git a/i18n_string/i18n_string.inc b/i18n_string/i18n_string.inc
index 3136aad..dce1a87 100644
--- a/i18n_string/i18n_string.inc
+++ b/i18n_string/i18n_string.inc
@@ -104,7 +104,7 @@ class i18n_string_object {
     else {
       $this->string = $string;
     }
-    if (isset($string['title'])) {
+    if (is_array($string) && isset($string['title'])) {
       $this->title = $string['title'];
     }
     return $this;
@@ -405,7 +405,7 @@ class i18n_string_textgroup_default {
    */
   protected static function string_filter($string_list, $filter) {
     // Remove 'language' and '*' conditions.
-    if (isset($filter['language'])) {
+    if (is_array($filter) && isset($filter['language'])) {
       unset($filter['language']);
     }
     while ($field = array_search('*', $filter)) {
