about summary refs log tree commit diff
path: root/src/rt/rust_log.cpp
diff options
context:
space:
mode:
authorGraydon Hoare <graydon@mozilla.com>2011-01-14 16:01:43 -0800
committerGraydon Hoare <graydon@mozilla.com>2011-01-14 16:50:37 -0800
commitd55bee44179f7dcfebd8eaf1b99730c8473dadea (patch)
tree8be1ee5181f8c9f8e473f43dffff61a9db8d474a /src/rt/rust_log.cpp
parent5b9eda4a41a410ffd8529a80c19f499ff856e07f (diff)
downloadrust-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.cpp8
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 {