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