blob: 1d9d32b228e474e6964068504036aee5b7314a66 [file] [log] [blame]
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "crazy_linker_error.h"
#include <stdarg.h>
#include <string.h>
#include <stdio.h>
#include "crazy_linker_debug.h"
namespace crazy {
void Error::Set(const char* message) {
if (!message)
message = "";
strlcpy(buff_, message, sizeof(buff_));
LOG("--- ERROR: %s", buff_);
}
void Error::Append(const char* message) {
if (!message)
return;
strlcat(buff_, message, sizeof(buff_));
LOG("--- ERROR: %s", buff_);
}
void Error::Format(const char* fmt, ...) {
va_list args;
va_start(args, fmt);
vsnprintf(buff_, sizeof(buff_), fmt, args);
va_end(args);
LOG("--- ERROR: %s", buff_);
}
void Error::AppendFormat(const char* fmt, ...) {
va_list args;
va_start(args, fmt);
size_t buff_len = strlen(buff_);
vsnprintf(buff_ + buff_len, sizeof(buff_) - buff_len, fmt, args);
va_end(args);
LOG("--- ERROR: %s", buff_);
}
} // namespace crazy