17158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com 27158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com/* 37158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com * Copyright 2012 Google Inc. 47158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com * 57158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com * Use of this source code is governed by a BSD-style license that can be 67158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com * found in the LICENSE file. 77158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com */ 87158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com 97158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com 107158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com 117158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com#include "SkTypes.h" 127158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com 137158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.comstatic const size_t kBufferSize = 2048; 147158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com 157158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com#include <stdarg.h> 167158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com#include <stdio.h> 177158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com 187158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com#include "ppapi/cpp/instance.h" 197158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com#include "ppapi/cpp/var.h" 207158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com 217158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.comextern pp::Instance* gPluginInstance; 227158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com 237158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.comnamespace { 247158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.comstatic const char* kLogPrefix = "SkDebugf:"; 257158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com} 267158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com 277158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.comvoid SkDebugf(const char format[], ...) { 287158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com if (gPluginInstance) { 297158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com char buffer[kBufferSize + 1]; 307158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com va_list args; 317158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com va_start(args, format); 327158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com sprintf(buffer, kLogPrefix); 337158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com vsnprintf(buffer + strlen(kLogPrefix), kBufferSize, format, args); 347158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com va_end(args); 357158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com pp::Var msg = pp::Var(buffer); 367158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com gPluginInstance->PostMessage(msg); 377158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com } 387158e6acca1b1ecc321d4d514a31cba11b5ead60borenet@google.com} 39