warning: Illegal offset type in isset or empty
I have fixed the problem. I think this will help you. For me it works perfectly:

BEFORE:

// Custom strings work for English too, even if locale module is disabled.
if (isset($custom_strings[$langcode][$string])) {
  $string = $custom_strings[$langcode][$string];
}


AFTER:

// Custom strings work for English too, even if locale module is disabled.
if ($custom_strings[$langcode] &amp;&amp; isset($custom_strings[$langcode][$string])) {
  $string = $custom_strings[$langcode][$string];
}