blob: 522ee3071214c7e9bece18f2e5aab0376fe18875 [file] [log] [blame]
// Copyright (c) 2012 The Chromium OS 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 "gestures/include/tracer.h"
#include <string.h>
namespace gestures {
Tracer::Tracer(PropRegistry* prop_reg, WriteFn write_fn)
: write_fn_(write_fn),
tracing_enabled_(prop_reg, "Tracing Enabled", false) {}
void Tracer::Trace(const char* message, const char* name) {
if (tracing_enabled_.val_ && write_fn_) {
char write_msg[1024];
size_t len = strlen(message);
size_t len2 = strlen(name);
if ((len + len2) >= sizeof(write_msg)) {
strcpy(write_msg, "Error!! Gestures Library: Message too long!!");
} else {
strcpy(write_msg, message);
strcpy(write_msg + len, name);
}
(*write_fn_)(write_msg);
}
}
} // namespace gestures