diff options
Diffstat (limited to 'chromium/mojo/public/cpp/application/lib/mojo_main_standalone.cc')
-rw-r--r-- | chromium/mojo/public/cpp/application/lib/mojo_main_standalone.cc | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/chromium/mojo/public/cpp/application/lib/mojo_main_standalone.cc b/chromium/mojo/public/cpp/application/lib/mojo_main_standalone.cc new file mode 100644 index 00000000000..05825aa3319 --- /dev/null +++ b/chromium/mojo/public/cpp/application/lib/mojo_main_standalone.cc @@ -0,0 +1,22 @@ +// Copyright 2014 The Chromium 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 "mojo/public/cpp/application/application.h" +#include "mojo/public/cpp/environment/environment.h" +#include "mojo/public/cpp/utility/run_loop.h" + +extern "C" APPLICATION_EXPORT MojoResult CDECL MojoMain( + MojoHandle service_provider_handle) { + mojo::Environment env; + mojo::RunLoop loop; + + mojo::Application* app = mojo::Application::Create(); + app->BindServiceProvider( + mojo::MakeScopedHandle(mojo::MessagePipeHandle(service_provider_handle))); + app->Initialize(); + loop.Run(); + delete app; + + return MOJO_RESULT_OK; +} |