mirror of
https://github.com/love2d/love.git
synced 2026-08-19 20:19:42 +02:00
Fixed some bugs in SDLmain
This commit is contained in:
@@ -422,17 +422,29 @@ int main (int argc, char **argv)
|
|||||||
if (arg == NULL)
|
if (arg == NULL)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
newargv = (char **)realloc(gArgv, sizeof(char *) * (gArgc + 2));
|
const char *fusedstr = "--fused";
|
||||||
if (newargv == NULL)
|
size_t fusedarglen = SDL_strlen(fusedstr) + 1;
|
||||||
|
|
||||||
|
char *fusedarg = (char *) SDL_malloc(fusedarglen);
|
||||||
|
if (fusedarg == NULL)
|
||||||
{
|
{
|
||||||
SDL_free(arg);
|
SDL_free(arg);
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
newargv = (char **) realloc(gArgv, sizeof(char *) * (gArgc + 3));
|
||||||
|
if (newargv == NULL)
|
||||||
|
{
|
||||||
|
SDL_free(arg);
|
||||||
|
SDL_free(fusedarg);
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
gArgv = newargv;
|
gArgv = newargv;
|
||||||
SDL_strlcpy(arg, temparg, arglen);
|
SDL_strlcpy(arg, temparg, arglen);
|
||||||
|
SDL_strlcpy(fusedarg, fusedstr, fusedarglen);
|
||||||
gArgv[gArgc++] = arg;
|
gArgv[gArgc++] = arg;
|
||||||
gArgv[gArgc++] = "--fused"; // run in pseudo-fused mode
|
gArgv[gArgc++] = fusedarg; // run in pseudo-fused mode
|
||||||
gArgv[gArgc] = NULL;
|
gArgv[gArgc] = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user