Skip to content

App crashes on exit #22

@ghost

Description

Note that your try/catch in Static_Update will swallow Errors, until at some point the app crashes. If I change the code to:

    static extern (C) void Static_Update() nothrow
    {
        try
        {
            if (instance is null)
                assert(0);

            instance.Update();
        }
        catch (Exception ex)
        {
            assert(0);
        }
    }

Then I get a nice stack trace without having to run it in the debugger:

0x000000013F2CD2D6 in onAssertError
0x000000013F2BB5E8 in d_assertm
0x000000013F164EBA in void db.game.__assert(int)
0x000000013F1643EB in db.game.Game.Static_Update at C:\dev\projects\feedback\src\db\game.d(291)
0x000000013F1A2EF8 in MFSystem_RunFrame at c:\dev\projects\fuji\fuji\source\mfsystem.cpp(402)
0x000000013F1A2DE9 in MFSystem_GameLoop at c:\dev\projects\fuji\fuji\source\mfsystem.cpp(364)
0x000000013F19145A in MFMain at c:\dev\projects\fuji\fuji\source\mfmain.cpp(59)
0x000000013F165113 in db.main.Start at C:\dev\projects\feedback\src\db\main.d(96)
0x000000013F164FCA in db.main.WinMain at C:\dev\projects\feedback\src\db\main.d(32)
0x000000013F28C684 in __tmainCRTStartup at f:\dd\vctools\crt_bld\self_64_amd64\crt\src\crt0.c(275)
0x0000000077A2F56D in BaseThreadInitThunk
0x0000000077B63281 in RtlUserThreadStart

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions