• Sam Lantinga's avatar
    Daniel Wyatt 2010-03-26 14:52:53 PDT · a1e6d1c1
    Sam Lantinga authored
    If a non-console Windows SDL program has a non-quoted 0th argument followed
    optionally by more non-quoted arguments and then by an empty quoted argument,
    it will crash (attempts to dereference a NULL pointer).
    
    In other words, something like this:
    test.exe [non-quoted args] "" [...]
    
    The fix is a one-liner in ParseCommandLine() of
    src/main/win32/SDL_win32_main.c.
    
    You can test this with any non-console SDL program on windows like this:
    1) Open a console (cmd.exe)
    2) Launch the program in one of the following ways:
    program ""
    program arg1 ""
    program arg1 "" arg3
    
    These will not cause a crash:
    "program" [...]
    program "arg1" ""
    
    When a Windows program is launched from Explorer, its 0th argument seems to
    always be quoted, so it won't be a problem in that case.
    
    I've tested this on Windows XP SP3 and Windows 7.
    a1e6d1c1
Name
Last commit
Last update
..
beos Loading commit data...
dummy Loading commit data...
win32 Loading commit data...