blob: 6578289fdca4a8dbe143c3e1be66dc76c245d734 [file]
// Copyright (c) 2010 The WebM project authors. All Rights Reserved.
//
// Use of this source code is governed by a BSD-style license
// that can be found in the LICENSE file in the root of the source
// tree. An additional intellectual property rights grant can be found
// in the file PATENTS. All contributing project authors may
// be found in the AUTHORS file in the root of the source tree.
#include "playwebmapp.hpp"
#include <cassert>
static int CoMain(int, wchar_t*[]);
static HANDLE s_hQuit;
static BOOL __stdcall ConsoleCtrlHandler(DWORD type)
{
if (type != CTRL_C_EVENT)
return FALSE; //no, not handled here
const BOOL b = SetEvent(s_hQuit);
assert(b); b;
return TRUE; //yes, handled here
}
int wmain(int argc, wchar_t* argv[])
{
s_hQuit = CreateEvent(0, 0, 0, 0);
assert(s_hQuit);
const BOOL b = SetConsoleCtrlHandler(&ConsoleCtrlHandler, TRUE);
assert(b); b;
const HRESULT hr = CoInitialize(0);
if (FAILED(hr))
return 1;
const int status = CoMain(argc, argv);
CoUninitialize();
return status;
}
static int CoMain(int argc, wchar_t* argv[])
{
App app(s_hQuit);
return app(argc, argv);
}