From faf3e8575e043ae8658f7237b196dd0b83ab1a39 Mon Sep 17 00:00:00 2001 From: webchick Date: Sat, 28 Apr 2012 23:42:56 -0700 Subject: [PATCH] Issue #598586 by grendzy, deekayen, matglas86, dawehner, Zgear: Fixed watchdog() assumes is defined. --- includes/bootstrap.inc | 4 ++++ modules/dblog/dblog.module | 5 +---- modules/dblog/dblog.test | 2 ++ modules/simpletest/tests/actions_loop_test.module | 1 + modules/syslog/syslog.module | 2 +- 5 files changed, 9 insertions(+), 5 deletions(-) diff --git a/includes/bootstrap.inc b/includes/bootstrap.inc index 104aa708a8c..fead4c6849a 100644 --- a/includes/bootstrap.inc +++ b/includes/bootstrap.inc @@ -1717,6 +1717,9 @@ function watchdog($type, $message, $variables = array(), $severity = WATCHDOG_NO if (!$in_error_state && function_exists('module_implements')) { $in_error_state = TRUE; + // The user object may not exist in all conditions, so 0 is substituted if needed. + $user_uid = isset($user->uid) ? $user->uid : 0; + // Prepare the fields to be logged $log_entry = array( 'type' => $type, @@ -1725,6 +1728,7 @@ function watchdog($type, $message, $variables = array(), $severity = WATCHDOG_NO 'severity' => $severity, 'link' => $link, 'user' => $user, + 'uid' => $user_uid, 'request_uri' => $base_root . request_uri(), 'referer' => isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '', 'ip' => ip_address(), diff --git a/modules/dblog/dblog.module b/modules/dblog/dblog.module index a0d6d3bf094..9420c538da5 100644 --- a/modules/dblog/dblog.module +++ b/modules/dblog/dblog.module @@ -138,12 +138,9 @@ function _dblog_get_message_types() { * Note some values may be truncated for database column size restrictions. */ function dblog_watchdog(array $log_entry) { - // The user object may not exist in all conditions, so 0 is substituted if needed. - $user_uid = isset($log_entry['user']->uid) ? $log_entry['user']->uid : 0; - Database::getConnection('default', 'default')->insert('watchdog') ->fields(array( - 'uid' => $user_uid, + 'uid' => $log_entry['uid'], 'type' => substr($log_entry['type'], 0, 64), 'message' => $log_entry['message'], 'variables' => serialize($log_entry['variables']), diff --git a/modules/dblog/dblog.test b/modules/dblog/dblog.test index ca844a361c2..2e9810b86e9 100644 --- a/modules/dblog/dblog.test +++ b/modules/dblog/dblog.test @@ -105,6 +105,7 @@ class DBLogTestCase extends DrupalWebTestCase { 'severity' => $severity, 'link' => NULL, 'user' => $this->big_user, + 'uid' => isset($this->big_user->uid) ? $this->big_user->uid : 0, 'request_uri' => $base_root . request_uri(), 'referer' => $_SERVER['HTTP_REFERER'], 'ip' => ip_address(), @@ -387,6 +388,7 @@ class DBLogTestCase extends DrupalWebTestCase { 'severity' => WATCHDOG_NOTICE, 'link' => NULL, 'user' => $this->big_user, + 'uid' => isset($this->big_user->uid) ? $this->big_user->uid : 0, 'request_uri' => $base_root . request_uri(), 'referer' => $_SERVER['HTTP_REFERER'], 'ip' => ip_address(), diff --git a/modules/simpletest/tests/actions_loop_test.module b/modules/simpletest/tests/actions_loop_test.module index 77764907b9e..261cb8008a6 100644 --- a/modules/simpletest/tests/actions_loop_test.module +++ b/modules/simpletest/tests/actions_loop_test.module @@ -81,6 +81,7 @@ function watchdog_skip_semaphore($type, $message, $variables = array(), $severit 'severity' => $severity, 'link' => $link, 'user' => $user, + 'uid' => isset($user->uid) ? $user->uid : 0, 'request_uri' => $base_root . request_uri(), 'referer' => $_SERVER['HTTP_REFERER'], 'ip' => ip_address(), diff --git a/modules/syslog/syslog.module b/modules/syslog/syslog.module index afbec7fae9a..13276062631 100644 --- a/modules/syslog/syslog.module +++ b/modules/syslog/syslog.module @@ -109,7 +109,7 @@ function syslog_watchdog(array $log_entry) { '!ip' => $log_entry['ip'], '!request_uri' => $log_entry['request_uri'], '!referer' => $log_entry['referer'], - '!uid' => $log_entry['user']->uid, + '!uid' => $log_entry['uid'], '!link' => strip_tags($log_entry['link']), '!message' => strip_tags(!isset($log_entry['variables']) ? $log_entry['message'] : strtr($log_entry['message'], $log_entry['variables'])), ));