From e1399987a4456f95c296d9eb3add2bde7cd2720b Mon Sep 17 00:00:00 2001 From: Vladimir Enchev Date: Mon, 2 Nov 2015 13:22:03 +0200 Subject: [PATCH 1/3] application should not crash when start() method called multiple times --- application/application.ios.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/application/application.ios.ts b/application/application.ios.ts index f303fd79e..096b8ea15 100644 --- a/application/application.ios.ts +++ b/application/application.ios.ts @@ -217,7 +217,11 @@ global.__onUncaughtError = function (error: Error) { definition.notify({ eventName: definition.uncaughtErrorEvent, object: definition.ios, ios: error }); } +var started: boolean = false; exports.start = function () { - appModule.loadCss(); - UIApplicationMain(0, null, null, exports.ios && exports.ios.delegate ? NSStringFromClass(exports.ios.delegate) : NSStringFromClass(Responder)); + if (!started) { + appModule.loadCss(); + UIApplicationMain(0, null, null, exports.ios && exports.ios.delegate ? NSStringFromClass(exports.ios.delegate) : NSStringFromClass(Responder)); + started = true; + } } From 750444a7b3e5cfe6041600e6a6e93080bd354824 Mon Sep 17 00:00:00 2001 From: Vladimir Enchev Date: Mon, 2 Nov 2015 14:32:04 +0200 Subject: [PATCH 2/3] code fixed --- application/application.ios.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/application/application.ios.ts b/application/application.ios.ts index 096b8ea15..c7416a82e 100644 --- a/application/application.ios.ts +++ b/application/application.ios.ts @@ -220,8 +220,8 @@ global.__onUncaughtError = function (error: Error) { var started: boolean = false; exports.start = function () { if (!started) { + started = true; appModule.loadCss(); UIApplicationMain(0, null, null, exports.ios && exports.ios.delegate ? NSStringFromClass(exports.ios.delegate) : NSStringFromClass(Responder)); - started = true; } } From 0dd499c9ee0e153b288d752f0ac025f114afa8d9 Mon Sep 17 00:00:00 2001 From: Vladimir Enchev Date: Mon, 2 Nov 2015 14:35:31 +0200 Subject: [PATCH 3/3] Exception added --- application/application.ios.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/application/application.ios.ts b/application/application.ios.ts index c7416a82e..a1910d018 100644 --- a/application/application.ios.ts +++ b/application/application.ios.ts @@ -223,5 +223,7 @@ exports.start = function () { started = true; appModule.loadCss(); UIApplicationMain(0, null, null, exports.ios && exports.ios.delegate ? NSStringFromClass(exports.ios.delegate) : NSStringFromClass(Responder)); + } else { + throw new Error("iOS Application already started!"); } }