From 3830d8e3e1babcb240d47373c0137306a2b60fb8 Mon Sep 17 00:00:00 2001 From: Himaja Date: Mon, 16 Mar 2015 01:03:14 -0400 Subject: [PATCH] Fix ConsoleMsg in ConsoleAPICall for log messages in the Developer Tools web console. --- components/devtools/lib.rs | 20 +++++++++++++------- components/devtools_traits/lib.rs | 3 ++- components/script/dom/console.rs | 3 ++- 3 files changed, 17 insertions(+), 9 deletions(-) diff --git a/components/devtools/lib.rs b/components/devtools/lib.rs index 1b31e5e7166..6754c96bf60 100644 --- a/components/devtools/lib.rs +++ b/components/devtools/lib.rs @@ -68,9 +68,12 @@ struct ConsoleAPICall { #[derive(RustcEncodable)] struct ConsoleMsg { - logLevel: u32, - timestamp: u64, - message: String, + level: String, + timeStamp: u64, + arguments: Vec, + filename: String, + lineNumber: u32, + columnNumber: u32, } /// Spin up a devtools server that listens for connections on the specified port. @@ -193,14 +196,17 @@ fn run_server(receiver: Receiver, port: u16) { let actors = actors.lock().unwrap(); let console_actor = actors.find::(console_actor_name.as_slice()); match console_message { - ConsoleMessage::LogMessage(message) => { + ConsoleMessage::LogMessage(message, filename, lineNumber, columnNumber) => { let msg = ConsoleAPICall { from: console_actor.name.clone(), __type__: "consoleAPICall".to_string(), message: ConsoleMsg { - logLevel: 0, - timestamp: precise_time_ns(), - message: message, + level: "log".to_string(), + timeStamp: precise_time_ns(), + arguments: vec!(message), + filename: filename, + lineNumber: lineNumber, + columnNumber: columnNumber, }, }; for stream in console_actor.streams.borrow_mut().iter_mut() { diff --git a/components/devtools_traits/lib.rs b/components/devtools_traits/lib.rs index bb83117740e..d28f6230263 100644 --- a/components/devtools_traits/lib.rs +++ b/components/devtools_traits/lib.rs @@ -123,6 +123,7 @@ impl Decodable for Modification { //TODO: Include options for Warn, Debug, Info, Error messages from Console #[derive(Clone)] pub enum ConsoleMessage { - LogMessage(String), + // Log: message, filename, line number, column number + LogMessage(String, String, u32, u32), //WarnMessage(String), } diff --git a/components/script/dom/console.rs b/components/script/dom/console.rs index 6308556ef2e..69ececca802 100644 --- a/components/script/dom/console.rs +++ b/components/script/dom/console.rs @@ -33,7 +33,8 @@ impl Console { impl<'a> ConsoleMethods for JSRef<'a, Console> { fn Log(self, message: DOMString) { println!("{}", message); - propagate_console_msg(&self, ConsoleMessage::LogMessage(message)); + //TODO: Sending fake values for filename, lineNumber and columnNumber in LogMessage; adjust later + propagate_console_msg(&self, ConsoleMessage::LogMessage(message, String::from_str("test"), 1, 1)); } fn Debug(self, message: DOMString) {