// Copyright (c) 2013 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 <utils/log_utils.h>

#include <cstdio>
#include <stdarg.h>

#include "defines.h"

namespace latinime {
    /* static */ void LogUtils::logToJava(JNIEnv *const env, const char *const format, ...) {
        va_list args;
        va_start(args, format);
        vprintf(format, args);
        va_end(args);
    }
}
