| Index: chrome/common/ipc_logging.cc
|
| ===================================================================
|
| --- chrome/common/ipc_logging.cc (revision 9103)
|
| +++ chrome/common/ipc_logging.cc (working copy)
|
| @@ -41,6 +41,8 @@
|
| consumer_(NULL),
|
| queue_invoke_later_pending_(false),
|
| main_thread_(MessageLoop::current()) {
|
| + memset(log_function_mapping_, sizeof(log_function_mapping_), 0);
|
| +
|
| // Create an event for this browser instance that's set when logging is
|
| // enabled, so child processes can know when logging is enabled.
|
| int browser_pid;
|
| @@ -88,8 +90,18 @@
|
| RegisterWaitForEvent(!enabled_);
|
| }
|
|
|
| +void Logging::RegisterMessageLogger(int msg_start, LogFunction* func) {
|
| + int msg_class = msg_start >> 12;
|
| + if (msg_class > arraysize(log_function_mapping_)) {
|
| + NOTREACHED();
|
| + return;
|
| + }
|
| +
|
| + log_function_mapping_[msg_class] = func;
|
| +}
|
| +
|
| std::wstring Logging::GetEventName(bool enabled) {
|
| - return Logging::current()->GetEventName(GetCurrentProcessId(), enabled);
|
| + return current()->GetEventName(GetCurrentProcessId(), enabled);
|
| }
|
|
|
| std::wstring Logging::GetEventName(int browser_pid, bool enabled) {
|
| @@ -188,24 +200,12 @@
|
| }
|
| }
|
|
|
| -// static
|
| -LogFunction* g_log_function_mapping[16];
|
| -void RegisterMessageLogger(int msg_start, LogFunction* func) {
|
| - int msg_class = msg_start >> 12;
|
| - if (msg_class > arraysize(g_log_function_mapping)) {
|
| - NOTREACHED();
|
| - return;
|
| - }
|
| -
|
| - g_log_function_mapping[msg_class] = func;
|
| -}
|
| -
|
| void Logging::GetMessageText(uint16 type, std::wstring* name,
|
| const Message* message,
|
| std::wstring* params) {
|
| int message_class = type >> 12;
|
| - if (g_log_function_mapping[message_class] != NULL) {
|
| - g_log_function_mapping[message_class](type, name, message, params);
|
| + if (current()->log_function_mapping_[message_class] != NULL) {
|
| + current()->log_function_mapping_[message_class](type, name, message, params);
|
| } else {
|
| DLOG(INFO) << "No logger function associated with message class " <<
|
| message_class;
|
|
|