Commit 8f71172a authored by Sam Lantinga's avatar Sam Lantinga

Fixed bug #847

 Roger Willcocks      2009-10-25 08:45:37 PDT

appDidFinishLaunching is triggered before all the setup's complete. The easiest
fix is to arrange for another event to be sent when it's really ready, and run
SDL_main from there. Ref.
http://blog.rightsprite.com/2008/11/iphone-applicationdidfinishlaunching.html

SDL-1.3.0-4563/src/video/uikit/SDL_uikitappdelegate.m:



- (void)postFinishLaunch {

    /* run the user's application, passing argc and argv */
    int exit_status = SDL_main(forward_argc, forward_argv);

    /* free the memory we used to hold copies of argc and argv */
    int i;
    for (i=0; i<forward_argc; i++) {
        free(forward_argv[i]);
    }
    free(forward_argv);

    /* exit, passing the return status from the user's application */
    exit(exit_status);

}

- (void)applicationDidFinishLaunching:(UIApplication *)application {

    /* Set working directory to resource path */
    [[NSFileManager defaultManager] changeCurrentDirectoryPath: [[NSBundle
mainBundle] resourcePath]];

    [self performSelector:@selector(postFinishLaunch) withObject:nil
afterDelay:0.0];

--HG--
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%404148
parent 115c22f2
......@@ -71,11 +71,8 @@ int main(int argc, char **argv) {
return self;
}
- (void)applicationDidFinishLaunching:(UIApplication *)application {
/* Set working directory to resource path */
[[NSFileManager defaultManager] changeCurrentDirectoryPath: [[NSBundle mainBundle] resourcePath]];
- (void)postFinishLaunch {
/* run the user's application, passing argc and argv */
int exit_status = SDL_main(forward_argc, forward_argv);
......@@ -88,7 +85,15 @@ int main(int argc, char **argv) {
/* exit, passing the return status from the user's application */
exit(exit_status);
}
- (void)applicationDidFinishLaunching:(UIApplication *)application {
/* Set working directory to resource path */
[[NSFileManager defaultManager] changeCurrentDirectoryPath: [[NSBundle mainBundle] resourcePath]];
[self performSelector:@selector(postFinishLaunch) withObject:nil
afterDelay:0.0];
}
- (void)applicationWillTerminate:(UIApplication *)application {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment