Opened 11 years ago

Closed 10 years ago

#1733 closed defect (fixed)

Assertion failure in Windows when pressing Ctrl+Alt+Del while a map is loading

Reported by: gameboy Owned by:
Priority: Should Have Milestone: Alpha 17
Component: Core engine Keywords: windows
Cc: Patch:

Description (last modified by historic_bruno)

When the progress of the game to reach 29% of the time, the progress of the game is no longer loaded, I waited for nearly three minutes, and the last before I settle down shift + ctrl + alt key.

The way: Do I need to wait for a longer game load time (to wait more than three minutes or longer)? Thank you!

I have a 4G memory. I finally found a more specific error message:

By the way, I did not press shift + ctrl + alt key, I've been waiting for.

Assertion failed: "status == DISP_CHANGE_SUCCESSFUL"
 Location: wsdl.cpp:438 (SDL_SetVideoMode)
 
Call stack:
 
OnActivate (wsdl.cpp:836)
 hWnd = 0x002FD0A0 (..)
 state = 2425728 (0x00250380)
 __formal = 0x00250380 (..)
 fMinimized = (unavailable)
 
OnMessage (wsdl.cpp:1288)
 hWnd = 0x76ACFD72 (..)
 uMsg = 2425728 (0x00250380)
 wParam = 6 (0x00000006)
 lParam = 0 (0x00000000)
 
GetWindowLongW (:0)
 
GetWindowLongW (:0)
 
CallWindowProcW (:0)
 
CallWindowProcW (:0)
 
wglSwapBuffers (:0)
 
GetWindowLongW (:0)
 
GetWindowLongW (:0)
 
ReleaseDC (:0)
 
WCSToMBEx (:0)
 
KiUserCallbackDispatcher (:0)
 
PeekMessageW (:0)
 
SDL_PumpEvents (wsdl.cpp:1339)
 msg =
 hwnd = 0x01E47C74 (..)
 message = 2425728 (0x00250380)
 wParam = 257 (0x00000101)
 lParam = 17 (0x00000011)
 time = 3223126017 (0xC01D0001)
 pt = { x = 9163529 (0x008BD309), y = 1457 (0x000005B1) }
 

SDL_PollEvent (wsdl.cpp:1349)
 ev = 0x00141D8A ->
 type = [8] { 131 (0x83), 196 (0xC4), 4 (0x04), 133 (0x85), 192 (0xC0), 15 (0x0F), 132 (0x84), 154 (0x9A) }
 active = { type = 131 (0x83), gain = 196 (0xC4), state = 4 (0x04) }
 key =
 type = 131 (0x83)
 keysym = { sym = -1702621248, unicode = 1 (0x0001) }
 
motion = { type = 131 (0x83), x = 34052 (0x8504), y = 4032 (0x0FC0) }
 button =
 type = 131 (0x83)
 button = 196 (0xC4)
 state = 4 (0x04)
 x = 4032 (0x0FC0)
 y = 39556 (0x9A84)
 
resize = { type = 131 (0x83), w = 2592346048 (0x9A840FC0), h = 3204448257 (0xBF000001) }
 expose = { type = 131 (0x83) }
 quit = { type = 131 (0x83) }
 user = { type = 131 (0x83), code = 2592346048 (0x9A840FC0), data1 = 0xBF000001 }
 

PumpEvents (main.cpp:183)
 profile2__ =
 m_Name = 0x511CA52F -> (unavailable - internal error)
 

ev =
 ev =
 type = 125 (0x7D)
 active = { type = 125 (0x7D), gain = 25 (0x19), state = 109 (0x6D) }
 key =
 type = 125 (0x7D)
 keysym = { sym = 1913259, unicode = 42880 (0xA780) }
 
motion = { type = 125 (0x7D), x = 16493 (0x406D), y = 12715 (0x31AB) }
 button =
 type = 125 (0x7D)
 button = 25 (0x19)
 state = 109 (0x6D)
 x = 12715 (0x31AB)
 y = 29 (0x001D)
 
resize = { type = 125 (0x7D), w = 1913259 (0x001D31AB), h = 31762304 (0x01E4A780) }
 expose = { type = 125 (0x7D) }
 quit = { type = 125 (0x7D) }
 user = { type = 125 (0x7D), code = 1913259 (0x001D31AB), data1 = 0x01E4A780 }
 

profile2__ =
 m_Name = 0x01E47C74 (see above)
 
data = (unsupported basic_string<char,char_traits<char> >)
 
Frame (main.cpp:356)
 realTimeSinceLastFrame = 0.000000 (0x0101356B)
 need_update = (bool)0xE4
 profile2__ =
 m_Name = 0x3DD8F88A -> (unavailable - internal error)
 

need_render = true
 profile2__ =
 m_Name = 0x003856E4 -> "frame"
 
profile2__ =
 m_Name = 0x003856E4 (see above)
 

RunGameOrAtlas (main.cpp:507)
 argc = 1323332 (0x00143144)
 argv = 0x00000001
 args =
 m_Args = (unsupported vector<pair<CStr8,CStr8> >)
 m_Arg0 =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 47 ('/')
 

paths =
 m_root =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 49544
 
m_rdata =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 0
 
m_gameData =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 41654
 
m_userData =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 57232
 
m_config =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 57212
 
m_cache =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 1
 
m_logs =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 31860
 

replay =
 m_Stream = 0x01E47C70 -> (basic_istream<char,char_traits<char> >)
 
mod =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 63824
 
zip =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 0
 
paths =
 m_root =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 49544
 
m_rdata =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 0
 
m_gameData =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 41654
 
m_userData =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 57232
 
m_config =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 57212
 
m_cache =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 1
 
m_logs =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 31860
 

builder =
 m_VFS =
 px = 0x00000001
 pn =
 pi_ = 0x00100000 ->
 use_count_ = 1263159624 (0x4B4A4948)
 weak_count_ = 1330531660 (0x4F4E4D4C)
 


m_Files = (unsupported vector<Path >)
 m_TempDir =
 path = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
 separator = 4
 


main (main.cpp:550)
 argc = 3116766 (0x002F8EDE)
 argv = 0x00000001
 
wmain (wseh.cpp:380)
 argc = 3458817 (0x0034C701)
 argv = 0x00000001
 utf8_argv = (unsupported vector<char * >)
 ret = 0 (0x00000000)
 utf8 = (unsupported basic_string<char,char_traits<char> >)
 
CallStartupWithinTryBlock (wseh.cpp:397)
 ret = 0 (0x00000000)
 
RtlInitializeExceptionChain (:0)
 
RtlInitializeExceptionChain (:0)
 

errno = 13 (Insufficient access rights to open file)
 OS error = 0 (no error code was set)
 

====================================
 SVN Revision: custom build
 System info:
 (generated 2012-09-01 14:03:05 UTC) 

Change History (8)

comment:1 by gameboy, 11 years ago

Milestone: BacklogAlpha 12

comment:2 by historic_bruno, 11 years ago

Description: modified (diff)
Milestone: Alpha 12Backlog
Summary: new eror!Assertion failure in Windows when pressing Ctrl+Alt+Del while a map is loading

The error is a known problem caused by pressing Ctrl+Alt+Del while the game is loading in fullscreen mode. See this comment for more info. This is a fairly uncommon bug, as it only affects certain versions of Windows with the game running in fullscreen and the user pressing Ctrl+Alt+Del while a map is loading.

There are numerous workarounds to return to the desktop, in order of preference:

  • Press Alt+Enter to minimize the window,
  • Or press Alt+Tab or the Windows key,
  • Or press Ctrl+Alt+Esc,
  • Or set the game to run in windowed mode instead of fullscreen,
  • Or press Continue to close the error windows and continue loading the game in windowed mode,
  • Or simply wait patiently for the map to load without touching anything :)

Because there are so many workarounds for this uncommon bug, I don't consider it a priority to fix.

As far as how long it takes to load a map, I think it has been mentioned many times that you should try generating a smaller random map or a scenario instead, if you find the maps take too long to load. Most maps will load within seconds, not minutes, on a decent system.

If you find a particular map is worse than others, please name the map, and try different settings to determine when it fails or succeeds loading. Part of a useful bug report is providing us with as much information as possible.

Last edited 11 years ago by historic_bruno (previous) (diff)

comment:3 by Markus, 11 years ago

Keywords: windows added

comment:4 by historic_bruno, 11 years ago

Maybe updating to SDL 2.0 will resolve this, I'll test it.

in reply to:  4 comment:5 by historic_bruno, 11 years ago

Replying to historic_bruno:

Maybe updating to SDL 2.0 will resolve this, I'll test it.

Confirmed it's not reproducible with SDL 2.0

comment:6 by historic_bruno, 11 years ago

Owner: gameboy removed

comment:7 by ben, 10 years ago

In 14325:

Improves debugging output to help troubleshoot some WSDL bugs, refs #2146, #1733

comment:8 by historic_bruno, 10 years ago

Milestone: BacklogAlpha 17
Resolution: fixed
Status: newclosed

SDL2 fixes this and is now the default on Windows as of r15786.

Note: See TracTickets for help on using tickets.