view Xcode-iPhoneOS/Demos/src/common.c @ 3422:ec4db979dddb

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];
author Sam Lantinga <slouken@libsdl.org>
date Mon, 02 Nov 2009 07:55:42 +0000
parents 20326ba2bda2
children
line wrap: on
line source

/*
 *	common.c
 *	written by Holmes Futrell
 *	use however you want
 */

#include "common.h"
#include "SDL.h"
#include <stdlib.h>

/*
	Produces a random int x, min <= x <= max 
	following a uniform distribution
*/
int
randomInt(int min, int max)
{
    return min + rand() % (max - min + 1);
}

/*
	Produces a random float x, min <= x <= max 
	following a uniform distribution
 */
float
randomFloat(float min, float max)
{
    return rand() / (float) RAND_MAX *(max - min) + min;
}

void
fatalError(const char *string)
{
    printf("%s: %s\n", string, SDL_GetError());
    exit(1);
}