Index: includes/common.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/common.inc,v
retrieving revision 1.738
diff -u -p -r1.738 common.inc
--- includes/common.inc	18 Dec 2007 16:24:01 -0000	1.738
+++ includes/common.inc	19 Dec 2007 04:48:42 -0000
@@ -2840,7 +2840,7 @@ function drupal_alter($type, &$data) {
   // array. This is somewhat ugly, but is an unavoidable consequence of a flexible
   // drupal_alter() function, and the limitations of func_get_args().
   // @todo: Remove this in Drupal 7.
-  if (isset($data['__drupal_alter_by_ref'])) {
+  if (is_array($data) && isset($data['__drupal_alter_by_ref'])) {
     $by_ref_parameters = $data['__drupal_alter_by_ref'];
     unset($data['__drupal_alter_by_ref']);
   }
