diff options
| author | Graydon Hoare <graydon@mozilla.com> | 2011-01-14 16:01:43 -0800 |
|---|---|---|
| committer | Graydon Hoare <graydon@mozilla.com> | 2011-01-14 16:50:37 -0800 |
| commit | d55bee44179f7dcfebd8eaf1b99730c8473dadea (patch) | |
| tree | 8be1ee5181f8c9f8e473f43dffff61a9db8d474a /src/rt/rust_log.cpp | |
| parent | 5b9eda4a41a410ffd8529a80c19f499ff856e07f (diff) | |
| download | rust-d55bee44179f7dcfebd8eaf1b99730c8473dadea.tar.gz rust-d55bee44179f7dcfebd8eaf1b99730c8473dadea.zip | |
Further corrections to the logging layer in runtime.
Diffstat (limited to 'src/rt/rust_log.cpp')
| -rw-r--r-- | src/rt/rust_log.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/rt/rust_log.cpp b/src/rt/rust_log.cpp index d0ba85de868..bcd40c364b5 100644 --- a/src/rt/rust_log.cpp +++ b/src/rt/rust_log.cpp @@ -114,7 +114,8 @@ append_string(char *buffer, const char *format, ...) { if (buffer != NULL && format) { va_list args; va_start(args, format); - vsprintf(buffer + strlen(buffer), format, args); + size_t off = strlen(buffer); + vsnprintf(buffer + off, BUF_BYTES - off, format, args); va_end(args); } return buffer; @@ -127,7 +128,8 @@ append_string(char *buffer, rust_log::ansi_color color, append_string(buffer, "\x1b%s", _foreground_colors[color]); va_list args; va_start(args, format); - vsprintf(buffer + strlen(buffer), format, args); + size_t off = strlen(buffer); + vsnprintf(buffer + off, BUF_BYTES - off, format, args); va_end(args); append_string(buffer, "\x1b[0m"); } @@ -193,7 +195,7 @@ rust_log::trace_ln(rust_task *task, ansi_color color, uint32_t type_bits, char *message) { if (is_tracing(type_bits)) { if (_use_colors) { - char buffer[512] = ""; + char buffer[BUF_BYTES] = ""; append_string(buffer, color, "%s", message); trace_ln(task, buffer); } else { |
