1 // Copyright 2014 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #if !defined(__has_feature) || !__has_feature(objc_arc) 6 #error "This file requires ARC support." 7 #endif 8 9 #import <UIKit/UIKit.h> 10 11 #include "base/at_exit.h" 12 #include "base/command_line.h" 13 #include "media/base/yuv_convert.h" 14 #include "net/socket/ssl_server_socket.h" 15 16 #import "app_delegate.h" 17 18 int main(int argc, char* argv[]) { 19 // This class is designed to fulfill the dependents needs when it goes out of 20 // scope and gets destructed 21 base::AtExitManager exitManager; 22 23 // Publicize the CommandLine 24 CommandLine::Init(argc, argv); 25 26 #ifdef DEBUG 27 // Set min log level for debug builds. For some reason this has to be 28 // negative. 29 logging::SetMinLogLevel(-1); 30 #endif 31 32 // Allows later decoding of video frames. 33 media::InitializeCPUSpecificYUVConversions(); 34 35 // Enable support for SSL server sockets, which must be done as early as 36 // possible, preferably before any NSS SSL sockets (client or server) have 37 // been created. 38 net::EnableSSLServerSockets(); 39 40 @autoreleasepool { 41 return UIApplicationMain( 42 argc, argv, nil, NSStringFromClass([AppDelegate class])); 43 } 44 } 45