Function SDL_AppQuit

pub unsafe extern "C" fn SDL_AppQuit(
    appstate: *mut c_void,
    result: SDL_AppResult,
)
Available on crate feature dep_sdl3 only.
Expand description

App-implemented deinit entry point for SDL_MAIN_USE_CALLBACKS apps.

Apps implement this function when using SDL_MAIN_USE_CALLBACKS. If using a standard “main” function, you should not supply this.

This function is called once by SDL before terminating the program.

This function will be called no matter what, even if SDL_AppInit requests termination.

This function should not go into an infinite mainloop; it should deinitialize any resources necessary, perform whatever shutdown activities, and return.

You do not need to call SDL_Quit() in this function, as SDL will call it after this function returns and before the process terminates, but it is safe to do so.

The appstate parameter is an optional pointer provided by the app during SDL_AppInit(). If the app never provided a pointer, this will be NULL. This function call is the last time this pointer will be provided, so any resources to it should be cleaned up here.

This function is called by SDL on the main thread.

§Parameters

  • appstate: an optional pointer, provided by the app in SDL_AppInit.
  • result: the result code that terminated the app (success or failure).

§Thread safety

SDL_AppEvent() may get called concurrently with this function if other threads that push events are still active.

§Availability

This function is available since SDL 3.2.0.

§See also