Compiled on Windows, "Spring has crashed: Invalid handle"

Compiled on Windows, "Spring has crashed: Invalid handle"

Discuss the source code and development of Spring Engine in general from a technical point of view. Patches go here too.

Moderator: Moderators

tzaeru
Posts: 283
Joined: 28 Oct 2007, 02:23

Compiled on Windows, "Spring has crashed: Invalid handle"

Post by tzaeru »

Heya,

I compiled Spring on Windows. After a bit of a problem with mismatching mingw versions and whatnot and a few fresh reinstallers later, I managed to compile it all error-free.

But when I run it, it crashed with "Invalid handler". Here's the full infolog.txt:

Code: Select all

Using configuration source: "C:\Users\tzaeru\Documents\spring\build\springsettings.cfg"
Using additional configuration source: "C:\Users\tzaeru\Documents\My Games\Spring\springsettings.cfg"
Available log sections: KeyBindings, SkyBox, Net, GameServer, DecalsDrawerGL4, Model, ArchiveScanner, FarTextureHandler, Piece, BumpWater, GroundMoveType, DynWater, OBJParser, LuaSocket, CregSerializer, VFS, Texture, CSMFGroundTextures, Path, ModelRenderContainer, Font, AutohostInterface, Sound, Shader, RoamMeshDrawer
Enabled log sections: Sound(Notice)
Enable or disable log sections using the LogSections configuration key
or the SPRING_LOG_SECTIONS environment variable (both comma separated).
Use "none" to disable the default log sections.
LogOutput initialized.
============== <User Config> ==============
InputTextGeo = 0.26 0.73 0.02 0.028
LastSelectedMap = AlienDesert
LastSelectedMod = Balanced Annihilation V9.46
LastSelectedScript = Player vs. AI: NullAI 0.1
LastSelectedSetting = 3DTrees
ShadowMapSize = 6144
Shadows = 1
ShowPlayerInfo = 0
SpringData = C:/Users/tzaeru/Documents/spring/build;C:/Users/tzaeru/Documents/spring/cont
snd_volmaster = 58
============== </User Config> ==============
============== <User System> ==============
Spring 103.0.1-645-gd4dcac0a7 develop
Build Environment: boost-105500, GNU libstdc++ version 20140716
Compiler Version: gcc-4.9.1
Operating System: Microsoft Windows
Microsoft Home Premium Edition, 64-bit (build 9200)
Intel(R) Core(TM) i5-2550K CPU @ 3.40GHz; 12236MB RAM, 14092MB pagefile
Word Size: 32-bit (emulated)
CPU Clock: std::chrono::high_resolution_clock
Physical CPU Cores: 4
Logical CPU Cores: 4
============== </User System> ==============
[good_fpu_init] CPU SSE mask: 127, flags:
SSE 1.0: 1, SSE 2.0: 1
SSE 3.0: 1, SSSE 3.0: 1
SSE 4.1: 1, SSE 4.2: 1
SSE 4.0A: 0, SSE 5.0A: 0
using streflop SSE FP-math mode, CPU supports SSE instructions
[GL::PrintAvailableResolutions]
display: 1, bounds: {x=0, y=0, w=1920, h=1080}, FS modes:
[ 1] 1920x1080x24bpp@60Hz
[ 2] 1680x1050x24bpp@60Hz
[ 5] 1600x1024x24bpp@60Hz
[ 7] 1600x900x24bpp@60Hz
[ 9] 1440x900x24bpp@60Hz
[15] 1280x800x24bpp@60Hz
[17] 1280x720x24bpp@60Hz
[GL::LoadExtensions]
SDL version: linked 2.0.4; compiled 2.0.4
GL version: 4.5.0 NVIDIA 376.53
GL vendor: NVIDIA Corporation
GL renderer: GeForce GTX 1060 6GB/PCIe/SSE2
GLSL version: 4.50 NVIDIA
GLEW version: 1.5.8
Video RAM: total 6144MB, available 5530MB
SwapInterval: 1
[GR::PostInit]
ARB support: 1, GLSL support: 1, ATI hacks: 0
FBO support: 1, NPOT-texture support: 1, 24bit Z-buffer support: 1
primitive-restart support: 1, clip-control support: 0
max. FBO samples: 32, max. texture size: 32768, compress MIP-map textures: 0
max. smooth point-size: 190, max. vec4 varyings/attributes: 31/16
max. draw-buffers: 8, max. recommended indices/vertices: 1048576/1048576
max. buffer-bindings: 84, max. block-size: 64kB
[VSync::SetInterval] interval=0 (disabled)
[InitOpenGL] video mode set to 1920x1080:24bit @60Hz
[WatchDogInstall] Installed (HangTimeout: 10sec)
[WatchDog::RegisterThread] registering controls for thread [main]
[DataDirs] Portable Mode!
Using read-write data directory: C:\Users\tzaeru\Documents\spring\build\
Using read-only data directory: C:\Users\tzaeru\Documents\My Games\Spring\
Using read-only data directory: C:\Users\tzaeru\Documents\Spring\
Using read-only data directory: C:/Users/tzaeru/Documents/spring/cont\
Scanning: C:/Users/tzaeru/Documents/spring/cont\base
Scanning: C:\Users\tzaeru\Documents\My Games\Spring\maps
Scanning: C:\Users\tzaeru\Documents\My Games\Spring\games
Scanning: C:\Users\tzaeru\Documents\My Games\Spring\packages
Scanning: C:\Users\tzaeru\Documents\spring\build\base
[~ScopedOnceTimer][CArchiveScanner::ScanAllDirs] 38ms
[ThreadPool::SetThreadCount][1] wanted=3 current=1 maximum=4
[ThreadPool::SetThreadCount][2] workers=2
[Threading] Main thread CPU affinity mask set: 12
[f=-000001] [Sound] [Sound::InitThread] OpenAL info:
[f=-000001] [Sound] Available Devices:
[f=-000001] [Sound] Generic Software
[f=-000001] [Sound] Device: Generic Software
[f=-000001] [Sound] Vendor: Creative Labs Inc.
[f=-000001] [Sound] Version: 1.1
[f=-000001] [Sound] Renderer: Software
[f=-000001] [Sound] AL Extensions: EAX EAX2.0 EAX3.0 EAX4.0 EAX5.0 EAX3.0EMULATED EAX4.0EMULATED AL_EXT_OFFSET AL_EXT_LINEAR_DISTANCE AL_EXT_EXPONENT_DISTANCE
[f=-000001] [Sound] ALC Extensions: ALC_ENUMERATE_ALL_EXT ALC_ENUMERATION_EXT ALC_EXT_CAPTURE ALC_EXT_EFX
[f=-000001] [Sound] Max Sounds: 128
[f=-000001] [Sound] EFX is supported but software does not seem to work properly
[f=-000001] [Sound] [Sound::UpdateThread][1] maxSounds=128
[f=-000001] [WatchDog::RegisterThread] registering controls for thread [audio]
[f=-000001] [Sound] [Sound::UpdateThread][2]
[f=-000001] Joysticks found: 0
[f=-000001] Warning: AI Interface property 'supportsLookup' could not be found.
[f=-000001] [VSync::SetInterval] interval=0 (disabled)
[f=-000001] [InitOpenGL] video mode set to 1920x1080:24bit @60Hz
[f=-000001] [PreGame] hosting on: localhost:8452
[f=-000001] Connecting to local server
[f=-000001] [AddGameSetupArchivesToVFS] using map: AlienDesert
[f=-000001] Checksums: game=0x8278E680 map=0x2C1C8F26
[f=-000001] Error: Spring 103.0.1-645-gd4dcac0a7 develop has crashed.
[f=-000001] Error: DLL information:
[f=-000001] Error: 0x00400000 spring
[f=-000001] Error: 0x76f00000 ntdll
[f=-000001] Error: 0x75960000 KERNEL32
[f=-000001] Error: 0x75c30000 KERNELBASE
[f=-000001] Error: 0x75bb0000 ADVAPI32
[f=-000001] Error: 0x76350000 msvcrt
[f=-000001] Error: 0x10000000 DevIL
[f=-000001] Error: 0x766f0000 sechost
[f=-000001] Error: 0x73c60000 RPCRT4
[f=-000001] Error: 0x739c0000 SspiCli
[f=-000001] Error: 0x739b0000 CRYPTBASE
[f=-000001] Error: 0x76290000 bcryptPrimitives
[f=-000001] Error: 0x76410000 IMAGEHLP
[f=-000001] Error: 0x75ad0000 ucrtbase
[f=-000001] Error: 0x74160000 SHELL32
[f=-000001] Error: 0x64a60000 GLU32
[f=-000001] Error: 0x74120000 cfgmgr32
[f=-000001] Error: 0x76750000 windows.storage
[f=-000001] Error: 0x56260000 OPENGL32
[f=-000001] Error: 0x73d60000 combase
[f=-000001] Error: 0x76430000 USER32
[f=-000001] Error: 0x766a0000 powrprof
[f=-000001] Error: 0x75810000 win32u
[f=-000001] Error: 0x75840000 GDI32
[f=-000001] Error: 0x73ad0000 shlwapi
[f=-000001] Error: 0x756b0000 gdi32full
[f=-000001] Error: 0x61e40000 MSVCP80
[f=-000001] Error: 0x76e00000 kernel.appcore
[f=-000001] Error: 0x73b20000 shcore
[f=-000001] Error: 0x61da0000 MSVCR80
[f=-000001] Error: 0x76740000 profapi
[f=-000001] Error: 0x739e0000 WS2_32
[f=-000001] Error: 0x55920000 DDRAW
[f=-000001] Error: 0x70780000 vorbisfile
[f=-000001] Error: 0x62e80000 zlib1
[f=-000001] Error: 0x70e40000 libfreetype-6
[f=-000001] Error: 0x65180000 libfontconfig-1
[f=-000001] Error: 0x62aa0000 glew32
[f=-000001] Error: 0x000d0000 OpenAL32
[f=-000001] Error: 0x6c740000 SDL2
[f=-000001] Error: 0x64a50000 DCIMAN32
[f=-000001] Error: 0x73d30000 IMM32
[f=-000001] Error: 0x68140000 ogg
[f=-000001] Error: 0x75870000 ole32
[f=-000001] Error: 0x64cc0000 vorbis
[f=-000001] Error: 0x68f40000 libexpat-1
[f=-000001] Error: 0x761f0000 OLEAUT32
[f=-000001] Error: 0x73a50000 msvcp_win
[f=-000001] Error: 0x71140000 WINMM
[f=-000001] Error: 0x733a0000 VERSION
[f=-000001] Error: 0x0fee0000 WINMMBASE
[f=-000001] Error: 0x60fd0000 nvapi
[f=-000001] Error: 0x75de0000 SETUPAPI
[f=-000001] Error: 0x64090000 dxgi
[f=-000001] Error: 0x73490000 uxtheme
[f=-000001] Error: 0x76cc0000 MSCTF
[f=-000001] Error: 0x715f0000 dwmapi
[f=-000001] Error: 0x12fb0000 nvoglv32
[f=-000001] Error: 0x732f0000 WTSAPI32
[f=-000001] Error: 0x6d680000 DEVOBJ
[f=-000001] Error: 0x73bb0000 WINTRUST
[f=-000001] Error: 0x75830000 MSASN1
[f=-000001] Error: 0x73f80000 CRYPT32
[f=-000001] Error: 0x6ecd0000 ntmarta
[f=-000001] Error: 0x6f6f0000 WINSTA
[f=-000001] Error: 0x75a40000 clbcatq
[f=-000001] Error: 0x70f20000 shfolder
[f=-000001] Error: 0x59ef0000 dsound
[f=-000001] Error: 0x62490000 MMDevApi
[f=-000001] Error: 0x730b0000 PROPSYS
[f=-000001] Error: 0x62410000 AUDIOSES
[f=-000001] Error: 0x64970000 wintypes
[f=-000001] Error: 0x57100000 wdmaud
[f=-000001] Error: 0x570f0000 ksuser
[f=-000001] Error: 0x68320000 AVRT
[f=-000001] Error: 0x570d0000 msacm32
[f=-000001] Error: 0x64700000 MSACM32
[f=-000001] Error: 0x570c0000 midimap
[f=-000001] Error: 0x1ac90000 wrap_oal
[f=-000001] Error: 0x59d50000 dinput8
[f=-000001] Error: 0x57140000 HID
[f=-000001] Error: 0x570e0000 XInput1_4
[f=-000001] Error: 0x736f0000 dbghelp
[f=-000001] Error: Exception: Invalid handle (0xc0000008)
[f=-000001] Error: Exception Address: 0x76f26e63
[f=-000001] Error: Stacktrace for Spring 103.0.1-645-gd4dcac0a7 develop:
[f=-000001] Error: (0) C:\WINDOWS\SYSTEM32\ntdll.dll [0x00026E63]
[f=-000001] Error: (1) C:\WINDOWS\SYSTEM32\ntdll.dll [0x00040045]
[f=-000001] Error: (2) C:\WINDOWS\SYSTEM32\ntdll.dll [0x0003FF65]
[f=-000001] Error: (3) C:\Users\tzaeru\Documents\spring\build\spring.exe [0x0090FAB7]
[f=-000001] Error: (4) C:\Users\tzaeru\Documents\spring\build\spring.exe [0x00911EC9]
[f=-000001] Error: (5) C:\Users\tzaeru\Documents\spring\build\spring.exe [0x0051EC15]
[f=-000001] Error: (6) C:\Users\tzaeru\Documents\spring\build\spring.exe [0x0052098B]
[f=-000001] Error: (7) C:\Users\tzaeru\Documents\spring\build\spring.exe [0x00455204]
[f=-000001] Error: (8) C:\Users\tzaeru\Documents\spring\build\spring.exe [0x0080535D]
[f=-000001] Error: (9) C:\Users\tzaeru\Documents\spring\build\spring.exe [0x00D235E0]
[f=-000001] Error: (10) C:\Users\tzaeru\Documents\spring\build\spring.exe [0x00A1C89D]
[f=-000001] Error: (11) C:\Users\tzaeru\Documents\spring\build\spring.exe [0x00C2171E]
[f=-000001] Error: (12) C:\Users\tzaeru\Documents\spring\build\spring.exe [0x00A19E85]
[f=-000001] Error: (13) C:\Users\tzaeru\Documents\spring\build\spring.exe [0x00D637D4]
[f=-000001] Error: (14) C:\Users\tzaeru\Documents\spring\build\spring.exe [0x008567E4]
[f=-000001] Error: (15) C:\Users\tzaeru\Documents\spring\build\spring.exe [0x0083ACDF]
[f=-000001] Error: (16) C:\Users\tzaeru\Documents\spring\build\spring.exe [0x00E6E974]
[f=-000001] Error: (17) C:\Users\tzaeru\Documents\spring\build\spring.exe [0x004013DE]
[f=-000001] Error: (18) C:\WINDOWS\System32\KERNEL32.DLL [0x000162C4]
[f=-000001] Error: (19) C:\WINDOWS\SYSTEM32\ntdll.dll [0x00060FD9]
[f=-000001] Error: (20) C:\WINDOWS\SYSTEM32\ntdll.dll [0x00060FA4]
[f=-000001] Error: [ErrorMessageBox][1] msg="Spring has crashed:
Invalid handle.

A stacktrace has been written to:
C:\Users\tzaeru\Documents\spring\build\infolog.txt" IsMainThread()=1 fromMain=0
[f=-000001] Error: [ErrorMessageBox][2]
[f=-000001] [SpringApp::ShutDown][1]
[f=-000001] [ThreadPool::SetThreadCount][1] wanted=0 current=3 maximum=4
[f=-000001] [async=0] threads=3 tasks=8 {sum,avg}{exec,wait}time={{0.000, 0.000}, {0.000, 0.000}}ms
[f=-000001] thread=1 tasks=6 (0.000%) {sum,min,max,avg}{exec,wait}time={{-0.000, 0.000, 2.000, -0.000}, {0.000, 0.000, 0.000, 0.000}}ms
[f=-000001] thread=2 tasks=2 (0.000%) {sum,min,max,avg}{exec,wait}time={{0.000, 0.000, 0.000, 0.000}, {0.000, 0.000, 0.000, 0.000}}ms
[f=-000001] [async=1] threads=3 tasks=2 {sum,avg}{exec,wait}time={{0.000, 0.000}, {-0.000, -0.000}}ms
[f=-000001] thread=1 tasks=1 (0.000%) {sum,min,max,avg}{exec,wait}time={{0.000, 0.000, 0.000, 0.000}, {0.000, 0.000, 0.000, 0.000}}ms
[f=-000001] thread=2 tasks=1 (0.000%) {sum,min,max,avg}{exec,wait}time={{0.000, 0.000, 0.000, 0.000}, {-0.000, -0.000, -0.000, -0.000}}ms
[f=-000001] [ThreadPool::SetThreadCount][2] workers=0
[f=-000001] [SpringApp::ShutDown][2]
[f=-000001] [WatchDog::DeregisterThread] deregistering controls for thread [audio]
[f=-000001] [Sound] [Sound::UpdateThread][3] efx=1038d448
[f=-000001] [Sound] [Sound::UpdateThread][4]
[f=-000001] [SpringApp::ShutDown][3]
[f=-000001] Statistics for local connection:
Received: 0 bytes
Sent: 17 bytes

[f=-000001] [SpringApp::ShutDown][4]
[f=-000001] [SpringApp::ShutDown][5]
[f=-000001] [SpringApp::ShutDown][6]
[f=-000001] [SpringApp::ShutDown][7]
[LuaSocket] Dumping luasocket rules:
[LuaSocket] TCP_CONNECT ALLOW * -1
[LuaSocket] TCP_LISTEN ALLOW * -1
[LuaSocket] UDP_LISTEN ALLOW * -1
[SpringApp::ShutDown][8]
[WatchDog::DeregisterThread] deregistering controls for thread [main]
[WatchDog::Uninstall][1] hangDetectorThread=1033a4d8
[WatchDog::Uninstall][2]
[WatchDog::Uninstall][3]
[SpringApp::ShutDown][9]
Error: [ErrorMessageBox][3]
Error: [ErrorMessageBox][4]
Fatal: Spring: Unhandled exception
Spring has crashed:
Invalid handle.

A stacktrace has been written to:
C:\Users\tzaeru\Documents\spring\build\infolog.txt
Given that there doesn't seem to be that much debug data in here, how should I approach running Spring with more debug data?
Kloot
Spring Developer
Posts: 1867
Joined: 08 Oct 2006, 16:58

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by Kloot »

Code: Select all

rts/lib/asio/include/asio/ip/detail/impl/endpoint.ipp:76
rts/System/Net/ProtocolDef.cpp:37
/opt/mxe/usr/lib/gcc/i686-w64-mingw32/4.8.1/include/c++/bits/shared_ptr_base.h:175
rts/Net/GameServer.cpp:354
rts/Game/Players/PlayerBase.h:15
/opt/mxe/usr/lib/gcc/i686-w64-mingw32/4.8.1/include/c++/ext/atomicity.h:47
/opt/mxe/tmp-gcc/gcc-4.8.1.build/i686-w64-mingw32/libstdc++-v3/include/bits/ostream.tcc:81
rts/Sim/Features/Feature.cpp:216
/opt/mxe/usr/lib/gcc/i686-w64-mingw32/4.8.1/include/c++/bits/basic_string.h:539
rts/Sim/Features/Feature.cpp:288
/opt/mxe/usr/lib/gcc/i686-w64-mingw32/4.8.1/include/c++/bits/stl_list.h:1562
rts/System/StartScriptGen.cpp:61
/opt/mxe/usr/lib/gcc/i686-w64-mingw32/4.8.1/include/c++/bits/shared_ptr_base.h:552
rts/System/float3.h:39
/opt/mxe/tmp-gcc/gcc-4.8.1/mirror-mingw-w64-c28722c/trunk/mingw-w64-crt/crt/crtexe.c:314
Trace is an incoherent mess, but "invalid handle" narrows it to Windows-specific code in one of {lib/asio,lib/mingw-std-threads,FileSystemAbstraction,Win/CriticalSection,Win/Once}. mingw should come with a port of the gdb debugger which will tell you more.
tzaeru
Posts: 283
Joined: 28 Oct 2007, 02:23

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by tzaeru »

Ran it with gdb, but it doesn't look like much to me:

Code: Select all

Starting program: C:\Users\tzaeru\Documents\spring\build\spring.exe
[New Thread 4508.0x3250]
[New Thread 4508.0x1c90]
[New Thread 4508.0x1a64]
[New Thread 4508.0x221c]
[New Thread 4508.0x1a1c]
[New Thread 4508.0x3714]
[Thread 4508.0x3714 exited with code 0]
[New Thread 4508.0x2d50]
[New Thread 4508.0x264]
[Thread 4508.0x1a1c exited with code 0]
[Thread 4508.0x2d50 exited with code 0]
[Thread 4508.0x264 exited with code 0]
[New Thread 4508.0x10ec]
[New Thread 4508.0x1748]
[New Thread 4508.0x8a4]
[New Thread 4508.0x5b0]
[New Thread 4508.0x21e0]
[New Thread 4508.0x181c]
[New Thread 4508.0x3720]
[New Thread 4508.0x43c]
[New Thread 4508.0x3590]
[New Thread 4508.0xa7c]
[New Thread 4508.0x3004]
[New Thread 4508.0x20ac]
[New Thread 4508.0x2210]
gdb: unknown target exception 0xc0000008 at 0x76f26e63

Program received signal ?, Unknown signal.
0x76f26e63 in ntdll!RtlWaitOnAddress () from C:\WINDOWS\SYSTEM32\ntdll.dll
(gdb) continue
Might I be missing some debug symbols or debug build flags or something? Sorry for the level of noobness, haven't really done much of this stuff on Windows..
Last edited by tzaeru on 15 Feb 2017, 19:05, edited 1 time in total.
Kloot
Spring Developer
Posts: 1867
Joined: 08 Oct 2006, 16:58

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by Kloot »

The exception address is inside ntdll (for which you don't have debug symbols) but what matters is the code path in Spring leading up it, for which symbols are available unless you stripped the executable after compilation. You just need to request a backtrace ('bt full') instead of a continue.
User avatar
jamerlan
Balanced Annihilation Developer
Posts: 683
Joined: 20 Oct 2009, 13:04

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by jamerlan »

just to double check: Did you try this?

gdb spring.exe
run
when it crash and you have gdb window: bt full
(I type it from my memory, it is better to google it)
hokomoko
Spring Developer
Posts: 593
Joined: 02 Jun 2014, 00:46

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by hokomoko »

Try to use gcc 4.9.3
tzaeru
Posts: 283
Joined: 28 Oct 2007, 02:23

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by tzaeru »

Ah. thanks!

Code: Select all

(gdb) bt full
#0  0x76f26e63 in ntdll!RtlWaitOnAddress () from C:\WINDOWS\SYSTEM32\ntdll.dll
No symbol table info available.
#1  0x76f40045 in ntdll!RtlEnterCriticalSection () from C:\WINDOWS\SYSTEM32\ntdll.dll
No symbol table info available.
#2  0x76f3ff65 in ntdll!RtlEnterCriticalSection () from C:\WINDOWS\SYSTEM32\ntdll.dll
No symbol table info available.
#3  0x0090fab7 in lock (this=0xfeeefeee)
    at C:/Users/tzaeru/Documents/spring/rts/lib/asio/include/asio/detail/win_mutex.hpp:49
No locals.
#4  scoped_lock (m=..., this=<synthetic pointer>)
    at C:/Users/tzaeru/Documents/spring/rts/lib/asio/include/asio/detail/scoped_lock.hpp:45
No locals.
#5  do_use_service (factory=
    0xc6cfa0 <asio::detail::service_registry::create<asio::datagram_socket_service<asio::ip::udp> >(asio::io_service&)>, key=<synthetic pointer>, this=0xfeeefeea)
    at C:/Users/tzaeru/Documents/spring/rts/lib/asio/include/asio/detail/impl/service_registry.ipp:107
        lock = {<asio::detail::noncopyable> = {<No data fields>}, mutex_ = @0xfeeefeee, locked_ = <optimized out>}
        service = <optimized out>
        new_service = <optimized out>
#6  use_service<asio::datagram_socket_service<asio::ip::udp> > (this=0xfeeefeea)
    at C:/Users/tzaeru/Documents/spring/rts/lib/asio/include/asio/detail/impl/service_registry.hpp:47
        key = {
          type_info_ = 0xf4e3bc <typeinfo for asio::detail::typeid_wrapper<asio::datagram_socket_service<asio::ip::udp> >>, id_ = 0x0}
        factory = 0xc6cfa0 <asio::detail::service_registry::create<asio::datagram_socket_service<asio::ip::udp> >(asio::io_service&)>
#7  use_service<asio::datagram_socket_service<asio::ip::udp> > (ios=...)
    at C:/Users/tzaeru/Documents/spring/rts/lib/asio/include/asio/impl/io_service.hpp:32
No locals.
#8  basic_io_object (io_service=..., this=<optimized out>)
    at C:/Users/tzaeru/Documents/spring/rts/lib/asio/include/asio/basic_io_object.hpp:182
No locals.
#9  basic_socket (io_service=..., this=<optimized out>)
    at C:/Users/tzaeru/Documents/spring/rts/lib/asio/include/asio/basic_socket.hpp:70
No locals.
#10 basic_datagram_socket (io_service=..., this=<optimized out>)
    at C:/Users/tzaeru/Documents/spring/rts/lib/asio/include/asio/basic_datagram_socket.hpp:69
No locals.
#11 netcode::UDPListener::TryBindSocket (port=<optimized out>, socket=<optimized out>, ip=...)
    at C:\Users\tzaeru\Documents\spring\rts\System\Net\UDPListener.cpp:61
        err = {_M_value = 0, _M_cat = 0xec002c <(anonymous namespace)::system_category_instance>}
        supportsIPv6 = <optimized out>
        addr = {impl_ = {data_ = {base = {sa_family = 8, sa_data = "\000\000É'ôvQ\200©µ°'£\030"}, v4 = {
---Type <return> to continue, or q <return> to quit---
                sin_family = 8, sin_port = 0, sin_addr = {S_un = {S_un_b = {s_b1 = 201 'É', s_b2 = 146 ''',
                      s_b3 = 244 'ô', s_b4 = 118 'v'}, S_un_w = {s_w1 = 37577, s_w2 = 30452}, S_addr = 1995739849}},
                sin_zero = "Q\200©µ°'£\030"}, v6 = {sin6_family = 8, sin6_port = 0, sin6_flowinfo = 1995739849,
                sin6_addr = {u = {Byte = "Q\200©µ°'£\030\000\000ï\017¸'£\030", Word = {32849, 46505, 37296, 6307, 0,
                      4079, 37304, 6307}}}, {sin6_scope_id = 267322384, sin6_scope_struct = {{{Zone = 267322384,
                        Level = 0}, Value = 267322384}}}}}}}
        errorMsg = <optimized out>
#12 0x00911ec9 in netcode::UDPListener::UDPListener (this=0x18a38f10, port=8452, ip="localhost")
    at C:\Users\tzaeru\Documents\spring\rts\System\Net\UDPListener.cpp:33
        socket = std::shared_ptr (empty) 0x0
        err = ""
#13 0x0051ec15 in CGameServer::Initialize (this=this@entry=0x18a2dbf8)
    at C:\Users\tzaeru\Documents\spring\rts\Net\GameServer.cpp:205
No locals.
#14 0x0052098b in CGameServer::CGameServer (this=0x18a2dbf8,
    newClientSetup=std::shared_ptr (count 428802784, weak -648552897) 0xf6df998,
    newGameData=std::shared_ptr (count 428803432, weak 258865531) 0xf6df9a0,
    newGameSetup=<error reading variable: Cannot access memory at address 0x8278e684>)
    at C:\Users\tzaeru\Documents\spring\rts\Net\GameServer.cpp:175
No locals.
#15 0x00455204 in CPreGame::StartServer (this=<optimized out>, setupscript=...)
    at C:\Users\tzaeru\Documents\spring\rts\Game\PreGame.cpp:238
        startserver = {startTime = {static binder = {class_ = {members = std::vector of length 1, capacity 1 = {{
                    name = 0xf0746f <CSWTCH.92+251> "x", type = std::shared_ptr (count 1, weak 0) 0xff5a6f8,
                    offset = 0, alignment = 8, flags = 0}}, binder = 0xfad500 <spring_time::binder>,
                name = "spring_time", size = 8, alignment = 8,
                serializeProc = {<std::_Maybe_unary_or_binary_function<void, void*, creg::ISerializer*>> = {<std::binary_function<void*, creg::ISerializer*, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {
                    static _M_max_size = 8, static _M_max_align = 4, _M_functor = {_M_unused = {
                        _M_object = 0xff19d20, _M_const_object = 0xff19d20, _M_function_pointer = 0xff19d20,
                        _M_member_pointer = (void (std::_Undefined_class::*)(std::_Undefined_class * const)) 0xff19d20, this adjustment 258866684}, _M_pod_data = " \235ñ\017üým\017"},
                    _M_manager = 0xd52ab0 <std::_Function_base::_Base_manager<void creg::Class::SetSerialize<spring_time, void (spring_time::*)(creg::ISerializer*)>(spring_time*, void (spring_time::*)(creg::ISerializer*))::{lambda(void*, creg::ISerializer*)#1}>::_M_manager(std::_Any_data&, std::_Function_base::_Base_manager<void creg::Class::SetSerialize<spring_time, void (spring_time::*)(creg::ISerializer*)>(spring_time*, void (spring_time::*)(creg::ISerializer*))::{lambda(void*, creg::ISerializer*)#1}> const&, std::_Manager_operation)>},
                  _M_invoker = 0xd63630 <std::_Function_handler<void (void*, creg::ISerializer*), void creg::Class::SetSerialize<spring_time, void (spring_time::*)(creg::ISerializer*)>(spring_time*, void (spring_time::*)(creg::ISerializer*))::{lambda(void*, creg::ISerializer*)#1}>::_M_invoke(std::_Any_data const&, void*, creg::ISerializer*)>},
                postLoadProc = {<std::_Maybe_unary_or_binary_function<void, void*>> = {<std::unary_function<void*, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 8, static _M_max_align = 4,
                    _M_functor = {_M_unused = {_M_object = 0x0, _M_const_object = 0x0, _M_function_pointer = 0x0,
---Type <return> to continue, or q <return> to quit---
                        _M_member_pointer = NULL}, _M_pod_data = "\000\000\000\000\000\000\000"}, _M_manager = 0x0},
                  _M_invoker = 0x0}, currentMemberFlags = 0}, base = 0x0, flags = creg::CF_None,
              name = 0xf07558 <CSWTCH.92+484> "spring_time", size = 8, alignment = 8, hasVTable = false,
              isCregStruct = true, constructor = 0x83e950 <spring_time::_ConstructInstance(void*)>,
              destructor = 0x83e970 <spring_time::_DestructInstance(void*)>}, static creg_hasVTable = false,
            static creg_isStruct = true, x = 3646414400, static xs = 1487182225904966200},
          name = "PreGame::StartServer"}
        modArchive = "aliendesert.sd7"
        mapArchive = ""
        modChecksum = <optimized out>
        mapChecksum = <optimized out>
#16 0x00455959 in CPreGame::LoadSetupscript (this=<optimized out>,
    script="[game]\n{\n[team1]\n{\nteamleader=0;\nallyteam=1;\n}\n[player0]\n{\nteam=0;\nname=tzatz;\n}\n[team0]\n{\nteamleader=0;\nallyteam=0;\n}\n[modoptions]\n{\nmaxspeed=20;\n}\n[allyteam1]\n{\nnumallies=0;\n}\n[allyteam0]\n{\nnumallie"...) at C:\Users\tzaeru\Documents\spring\rts\Game\PreGame.cpp:100
No locals.
#17 0x0080535d in SelectMenu::Single (this=<optimized out>)
    at C:\Users\tzaeru\Documents\spring\rts\Menu\SelectMenu.cpp:203
No locals.
#18 0x00d235e0 in std::function<void ()>::operator()() const (this=<optimized out>)
    at C:/PROGRA~2/MINGW-~1/I686-4~1.1-P/mingw32/i686-w64-mingw32/include/c++/functional:2439
No locals.
#19 0x00a1c89d in operator() (this=0x199376c0)
    at C:/Users/tzaeru/Documents/spring/rts/lib/slimsig/include/slimsig/detail/slot.h:140
No locals.
#20 emit (this=0x1993a0f0)
    at C:/Users/tzaeru/Documents/spring/rts/lib/slimsig/include/slimsig/detail/signal_base.h:153
        scope = {signal = @0x1993a0f0}
        end = 0
#21 agui::Button::HandleEventSelf (this=0x1993a0c8, ev=...) at C:\Users\tzaeru\Documents\spring\rts\aGui\Button.cpp:79
No locals.
#22 0x00a19eb5 in agui::GuiElement::HandleEvent (this=0x1993a0c8, ev=...)
    at C:\Users\tzaeru\Documents\spring\rts\aGui\GuiElement.cpp:41
No locals.
#23 0x00a19e85 in agui::GuiElement::HandleEvent (this=0x19938b10, ev=...)
    at C:\Users\tzaeru\Documents\spring\rts\aGui\GuiElement.cpp:45
        it =
#24 0x00a19e85 in agui::GuiElement::HandleEvent (this=0x18a97b98, ev=...)
    at C:\Users\tzaeru\Documents\spring\rts\aGui\GuiElement.cpp:45
        it =
#25 0x00a18641 in agui::Gui::HandleEvent (this=0xffa77b8, ev=...)
    at C:\Users\tzaeru\Documents\spring\rts\aGui\Gui.cpp:123
        it = {element = , asBackground = true}
---Type <return> to continue, or q <return> to quit---
        handler = {element = , asBackground = 208}
#26 0x00d637d4 in operator()<const SDL_Event&, void> (__object=<optimized out>, this=<optimized out>)
    at C:/PROGRA~2/MINGW-~1/I686-4~1.1-P/mingw32/i686-w64-mingw32/include/c++/functional:569
No locals.
#27 __call<bool, SDL_Event const&, 0u, 1u> (__args=<optimized out>, this=<optimized out>)
    at C:/PROGRA~2/MINGW-~1/I686-4~1.1-P/mingw32/i686-w64-mingw32/include/c++/functional:1264
No locals.
#28 operator()<const SDL_Event&, bool> (this=<optimized out>)
    at C:/PROGRA~2/MINGW-~1/I686-4~1.1-P/mingw32/i686-w64-mingw32/include/c++/functional:1323
No locals.
#29 std::_Function_handler<void (SDL_Event const&), std::_Bind<std::_Mem_fn<bool (agui::Gui::*)(SDL_Event const&)> (agui::Gui*, std::_Placeholder<1>)> >::_M_invoke(std::_Any_data const&, SDL_Event const&) (__functor=..., __args#0=...)
    at C:/PROGRA~2/MINGW-~1/I686-4~1.1-P/mingw32/i686-w64-mingw32/include/c++/functional:2039
No locals.
#30 0x00d23458 in std::function<void (SDL_Event const&)>::operator()(SDL_Event const&) const (
    this=this@entry=0xffc7a10, __args#0=...)
    at C:/PROGRA~2/MINGW-~1/I686-4~1.1-P/mingw32/i686-w64-mingw32/include/c++/functional:2439
No locals.
#31 0x0082a21a in operator() (args#0=..., this=0xffc7a10)
    at C:/Users/tzaeru/Documents/spring/rts/lib/slimsig/include/slimsig/detail/slot.h:140
No locals.
#32 emit (args#0=..., this=<optimized out>)
    at C:/Users/tzaeru/Documents/spring/rts/lib/slimsig/include/slimsig/detail/signal_base.h:153
        scope = {signal = @0xfab5a0}
        end = 2
#33 PushEvent (ev=..., this=<optimized out>) at C:\Users\tzaeru\Documents\spring\rts\System\Input\InputHandler.cpp:14
No locals.
#34 InputHandler::PushEvents (this=<optimized out>)
    at C:\Users\tzaeru\Documents\spring\rts\System\Input\InputHandler.cpp:25
        __scopedTimer = {<BasicTimer> = {<spring::noncopyable> = {<No data fields>}, nameHash = 1589487838,
            startTime = {static binder = {class_ = {members = std::vector of length 1, capacity 1 = {{
                      name = 0xf0746f <CSWTCH.92+251> "x", type = std::shared_ptr (count 1, weak 0) 0xff5a6f8,
                      offset = 0, alignment = 8, flags = 0}}, binder = 0xfad500 <spring_time::binder>,
                  name = "spring_time", size = 8, alignment = 8,
                  serializeProc = {<std::_Maybe_unary_or_binary_function<void, void*, creg::ISerializer*>> = {<std::binary_function<void*, creg::ISerializer*, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {
                      static _M_max_size = 8, static _M_max_align = 4, _M_functor = {_M_unused = {
                          _M_object = 0xff19d20, _M_const_object = 0xff19d20, _M_function_pointer = 0xff19d20,
                          _M_member_pointer = (void (std::_Undefined_class::*)(std::_Undefined_class * const)) 0xff19d20, this adjustment 258866684}, _M_pod_data = " \235ñ\017üým\017"},
                      _M_manager = 0xd52ab0 <std::_Function_base::_Base_manager<void creg::Class::SetSerialize<spring_time, void (spring_time::*)(creg::ISerializer*)>(spring_time*, void (spring_time::*)(creg::ISerializer*))::{lambda(void*, creg::ISerializer*)#1}>::_M_manager(std::_Any_data&, std::_Function_base::_Base_manager<void creg::Class::SetSerializ---Type <return> to continue, or q <return> to quit---
e<spring_time, void (spring_time::*)(creg::ISerializer*)>(spring_time*, void (spring_time::*)(creg::ISerializer*))::{lambda(void*, creg::ISerializer*)#1}> const&, std::_Manager_operation)>},
                    _M_invoker = 0xd63630 <std::_Function_handler<void (void*, creg::ISerializer*), void creg::Class::SetSerialize<spring_time, void (spring_time::*)(creg::ISerializer*)>(spring_time*, void (spring_time::*)(creg::ISerializer*))::{lambda(void*, creg::ISerializer*)#1}>::_M_invoke(std::_Any_data const&, void*, creg::ISerializer*)>},
                  postLoadProc = {<std::_Maybe_unary_or_binary_function<void, void*>> = {<std::unary_function<void*, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 8,
                      static _M_max_align = 4, _M_functor = {_M_unused = {_M_object = 0x0, _M_const_object = 0x0,
                          _M_function_pointer = 0x0, _M_member_pointer = NULL},
                        _M_pod_data = "\000\000\000\000\000\000\000"}, _M_manager = 0x0}, _M_invoker = 0x0},
                  currentMemberFlags = 0}, base = 0x0, flags = creg::CF_None,
                name = 0xf07558 <CSWTCH.92+484> "spring_time", size = 8, alignment = 8, hasVTable = false,
                isCregStruct = true, constructor = 0x83e950 <spring_time::_ConstructInstance(void*)>,
                destructor = 0x83e970 <spring_time::_DestructInstance(void*)>}, static creg_hasVTable = false,
              static creg_isStruct = true, x = 3643912600, static xs = 1487182225904966200},
            name = "Misc::InputHandler::PushEvents"}, autoShowGraph = false, specialTimer = false}
        event = {type = 1026, common = {type = 1026, timestamp = 3632}, window = {type = 1026, timestamp = 3632,
            windowID = 1, event = 0 '\000', padding1 = 0 '\000', padding2 = 0 '\000', padding3 = 0 '\000',
            data1 = 1962999809, data2 = 540}, key = {type = 1026, timestamp = 3632, windowID = 1, state = 0 '\000',
            repeat = 0 '\000', padding2 = 0 '\000', padding3 = 0 '\000', keysym = {scancode = 1962999809, sym = 540,
              mod = 241, unused = 514}}, edit = {type = 1026, timestamp = 3632, windowID = 1,
            text = "\000\000\000\000\001\000\001u\034\002\000\000ñ\000\000\000\002\002\000\000Àöm\017/\016\000\000\001\000\000", start = 1966108, length = 1820518580}, text = {type = 1026, timestamp = 3632, windowID = 1,
            text = "\000\000\000\000\001\000\001u\034\002\000\000ñ\000\000\000\002\002\000\000Àöm\017/\016\000\000\001\000\000"}, motion = {type = 1026, timestamp = 3632, windowID = 1, which = 0, state = 1962999809, x = 540, y = 241,
            xrel = 514, yrel = 258864832}, button = {type = 1026, timestamp = 3632, windowID = 1, which = 0,
            button = 1 '\001', state = 0 '\000', clicks = 1 '\001', padding1 = 117 'u', x = 540, y = 241}, wheel = {
            type = 1026, timestamp = 3632, windowID = 1, which = 0, x = 1962999809, y = 540, direction = 241},
          jaxis = {type = 1026, timestamp = 3632, which = 1, axis = 0 '\000', padding1 = 0 '\000',
            padding2 = 0 '\000', padding3 = 0 '\000', value = 1, padding4 = 29953}, jball = {type = 1026,
            timestamp = 3632, which = 1, ball = 0 '\000', padding1 = 0 '\000', padding2 = 0 '\000',
            padding3 = 0 '\000', xrel = 1, yrel = 29953}, jhat = {type = 1026, timestamp = 3632, which = 1,
            hat = 0 '\000', value = 0 '\000', padding1 = 0 '\000', padding2 = 0 '\000'}, jbutton = {type = 1026,
            timestamp = 3632, which = 1, button = 0 '\000', state = 0 '\000', padding1 = 0 '\000',
            padding2 = 0 '\000'}, jdevice = {type = 1026, timestamp = 3632, which = 1}, caxis = {type = 1026,
            timestamp = 3632, which = 1, axis = 0 '\000', padding1 = 0 '\000', padding2 = 0 '\000',
            padding3 = 0 '\000', value = 1, padding4 = 29953}, cbutton = {type = 1026, timestamp = 3632, which = 1,
            button = 0 '\000', state = 0 '\000', padding1 = 0 '\000', padding2 = 0 '\000'}, cdevice = {type = 1026,
            timestamp = 3632, which = 1}, adevice = {type = 1026, timestamp = 3632, which = 1, iscapture = 0 '\000',
            padding1 = 0 '\000', padding2 = 0 '\000', padding3 = 0 '\000'}, quit = {type = 1026, timestamp = 3632},
          user = {type = 1026, timestamp = 3632, windowID = 1, code = 0, data1 = 0x75010001, data2 = 0x21c}, syswm = {
            type = 1026, timestamp = 3632, msg = 0x1}, tfinger = {type = 1026, timestamp = 3632, touchId = 1,
            fingerId = 2321245339649, x = 3.3771293e-043, y = 7.20267411e-043, dx = 1.17325245e-029,
---Type <return> to continue, or q <return> to quit---
            dy = 5.08811472e-042, pressure = 1.40129846e-045}, mgesture = {type = 1026, timestamp = 3632,
            touchId = 1, dTheta = 1.63526947e+032, dDist = 7.56701171e-043, x = 3.3771293e-043, y = 7.20267411e-043,
            numFingers = 63168, padding = 3949}, dgesture = {type = 1026, timestamp = 3632, touchId = 1,
            gestureId = 2321245339649, numFingers = 241, error = 7.20267411e-043, x = 1.17325245e-029,
            y = 5.08811472e-042}, drop = {type = 1026, timestamp = 3632,
            file = 0x1 <error: Cannot access memory at address 0x1>},
          padding = "\002\004\000\000\060\016\000\000\001\000\000\000\000\000\000\000\001\000\001u\034\002\000\000ñ\000\000\000\002\002\000\000Àöm\017/\016\000\000\001\000\000\000\034\000\036\000´è'lp"ÈÍ"}
#35 0x008567e4 in SpringApp::Run (this=this@entry=0xf6dfe04)
    at C:\Users\tzaeru\Documents\spring\rts\System\SpringApp.cpp:885
        __FUNCTION__ = "Run"
#36 0x0083acdf in Run (argc=1, argv=0xfef3238) at C:\Users\tzaeru\Documents\spring\rts\System\Main.cpp:48
        app = {inputFile = "", clientSetup = std::shared_ptr (count 5, weak 0) 0x18a97948}
        ret = -1
        err = <optimized out>
#37 0x00e6e974 in main (argc=1, argv=0xfef3238) at C:\Users\tzaeru\Documents\spring\rts\System\Main.cpp:109
No locals.
Can't say I saw much that immediately caught my attention.

EDIT:
hokomoko wrote:Try to use gcc 4.9.3
On it.
Last edited by tzaeru on 15 Feb 2017, 19:20, edited 1 time in total.
Kloot
Spring Developer
Posts: 1867
Joined: 08 Oct 2006, 16:58

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by Kloot »

As I thought, lib/asio used by netcode::UDPListener::TryBindSocket. Question is why it only fails on specific systems (i.e. yours).

edit: just noticed the "#3 0x0090fab7 in lock (this=0xfeeefeee)", seems to be a use-after-free bug.
Last edited by Kloot on 15 Feb 2017, 20:43, edited 1 time in total.
tzaeru
Posts: 283
Joined: 28 Oct 2007, 02:23

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by tzaeru »

hokomoko wrote:Try to use gcc 4.9.3
No luck.
dillinger
Posts: 0
Joined: 25 Mar 2017, 12:12

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by dillinger »

I wanted to know if you have resolved this issue. I am facing what appears to be identical problem based on the infolog / gdb logs. Compiling on Windows 10... mingw 4.8.x all versions through to 4.9.x (uninstalling all between compiles). Compiling the latest develop branch 1.0.3... I have the same behavior on both my laptop and desktop with the only commonality being windows 10.

"Spring has crashed: Invalid handle" is the error when attempting to load the game from menu screen. Doesn't seem so hang much, less then a second before crashes.

Doesn't appear to have anything to do with mod, map or AI type i'm testing with.. Same infolog result and error every time. Any advice would be appreciated. gdb logs don't appear to be much help... Here is the only meaningful log from it:

Code: Select all

gdb: unknown target exception 0x0000008 at 0x77556e63

Program received signal ?, Unknown signal.
0x77556e63 in ntdll!RtlWaitOnAddress () from C:\WINDOWS\SYSTEM32ntdll.dll

Here is the infolog:

Code: Select all

Using configuration source: "C:\Users\Dylan\Documents\My Games\Spring\springsettings.cfg"
Available log sections: Model, CregSerializer, Net, GroundMoveType, Piece, CSMFGroundTextures, SkyBox, LuaSocket, Sound, FarTextureHandler, AutohostInterface, OBJParser, DynWater, ModelRenderContainer, VFS, Texture, KeyBindings, Path, BumpWater, DecalsDrawerGL4, GameServer, Font, ArchiveScanner, Shader, RoamMeshDrawer
Enabled log sections: Sound(Notice)
Enable or disable log sections using the LogSections configuration key
  or the SPRING_LOG_SECTIONS environment variable (both comma separated).
  Use "none" to disable the default log sections.
LogOutput initialized.
============== <User Config> ==============
  LastSelectedMap = SuperSpeedMetal
  LastSelectedMod = XTA 9.75
  LastSelectedScript = Player vs. AI: AAI 0.9
  LastSelectedSetting = UseEFX
  Sound = 0
  UseEFX = 0
============== </User Config> ==============
============== <User System> ==============
  Spring 103.0.1-723-g9cd5c5c85 develop
  Build Environment: boost-105500, GNU libstdc++ version 20140716
  Compiler Version:  gcc-4.9.1
  Operating System:  Microsoft Windows
Microsoft Windows XP Professional Service Pack 2 (build 2600)
Intel(R) Core(TM) i5-6500 CPU @ 3.20GHz; 16329MB RAM, 18761MB pagefile
    Word Size:       32-bit (emulated)
           CPU Clock: std::chrono::high_resolution_clock
  Physical CPU Cores: 4
   Logical CPU Cores: 4
============== </User System> ==============
[good_fpu_init] CPU SSE mask: 127, flags:
	SSE 1.0:  1,  SSE 2.0:  1
	SSE 3.0:  1, SSSE 3.0:  1
	SSE 4.1:  1,  SSE 4.2:  1
	SSE 4.0A: 0,  SSE 5.0A: 0
	using streflop SSE FP-math mode, CPU supports SSE instructions
[GL::PrintAvailableResolutions]
	display: 1, bounds: {x=0, y=0, w=1920, h=1080}, FS modes:
		[ 1] 1920x1080x24bpp@60Hz
		[31] 1680x1050x24bpp@60Hz
		[47] 1600x900x24bpp@60Hz
		[49] 1440x900x24bpp@60Hz
		[61] 1280x800x24bpp@60Hz
		[65] 1280x720x24bpp@120Hz
		[73] 1152x648x24bpp@60Hz
[GL::PostInit]
	SDL version:  linked 2.0.4; compiled 2.0.4
	GL version:   4.5.13464 Compatibility Profile Context 21.19.407.0
	GL vendor:    ATI Technologies Inc.
	GL renderer:  Radeon (TM) RX 480 Graphics
	GLSL version: 4.50
	GLEW version: 1.5.8
	Video RAM:    unknown
	SwapInterval: 0
[GR::PostInit]
	ARB support: 1, GLSL support: 1, ATI hacks: 1
	FBO support: 1, NPOT-texture support: 1, 24bit Z-buffer support: 0
	primitive-restart support: 1, clip-control support: 0
	max. FBO samples: -1, max. texture size: 16384, compress MIP-map textures: 0
	max. smooth point-size: 63, max. vec4 varyings/attributes: 32/29
	max. draw-buffers: 8, max. recommended indices/vertices: 2147483647/2147483647
	max. buffer-bindings: 90, max. block-size: 559236kB
[VSync::SetInterval] interval=0 (disabled)
[LogDisplayMode] display-mode set to 1920x1080x24bpp@59Hz (fullscreen::decorated)
[WatchDogInstall] Installed (HangTimeout: 10sec)
[WatchDog::RegisterThread] registering controls for thread [main]
Using read-write data directory: C:\Users\Dylan\Documents\My Games\Spring\
Using read-only data directory: C:\Program Files (x86)\Spring\
Scanning: C:\Program Files (x86)\Spring\maps
Scanning: C:\Program Files (x86)\Spring\base
Scanning: C:\Program Files (x86)\Spring\games
Warning: Invalid Name detected, please contact the author of the archive to remove the Version from the Name: Balanced Annihilation V7.20, Version: V7.20
[~ScopedOnceTimer][CArchiveScanner::ScanAllDirs] 196ms
[ThreadPool::SetThreadCount][1] wanted=3 current=1 maximum=4
[ThreadPool::SetThreadCount][2] workers=2
[Threading] Main thread CPU affinity mask set: 12
[f=-000001] Joysticks found: 0
[f=-000001] [VSync::SetInterval] interval=0 (disabled)
[f=-000001] [LogDisplayMode] display-mode set to 1920x1080x24bpp@59Hz (fullscreen::decorated)
[f=-000001] [CPreGame] hosting on: localhost:8452
[f=-000001] Connecting to local server
[f=-000001] [PreGame::AddGameSetupArchivesToVFS] using map: SuperSpeedMetal
[f=-000001] [PreGame::StartServer] checksums: game=0xCEC0B539 map=0xF9FC1F4C
[f=-000001] Error: Spring 103.0.1-723-g9cd5c5c85 develop has crashed.
[f=-000001] Error: DLL information:
[f=-000001] Error: 0x00400000	spring
[f=-000001] Error: 0x77530000	ntdll
[f=-000001] Error: 0x76610000	KERNEL32
[f=-000001] Error: 0x75d10000	KERNELBASE
[f=-000001] Error: 0x717d0000	apphelp
[f=-000001] Error: 0x71550000	AcLayers
[f=-000001] Error: 0x77040000	msvcrt
[f=-000001] Error: 0x74220000	USER32
[f=-000001] Error: 0x77100000	win32u
[f=-000001] Error: 0x76700000	GDI32
[f=-000001] Error: 0x760b0000	gdi32full
[f=-000001] Error: 0x74410000	SHELL32
[f=-000001] Error: 0x76390000	cfgmgr32
[f=-000001] Error: 0x76ad0000	windows.storage
[f=-000001] Error: 0x75a00000	combase
[f=-000001] Error: 0x76730000	ucrtbase
[f=-000001] Error: 0x76a00000	RPCRT4
[f=-000001] Error: 0x73ff0000	SspiCli
[f=-000001] Error: 0x73fe0000	CRYPTBASE
[f=-000001] Error: 0x75940000	bcryptPrimitives
[f=-000001] Error: 0x75cc0000	sechost
[f=-000001] Error: 0x759b0000	powrprof
[f=-000001] Error: 0x741a0000	advapi32
[f=-000001] Error: 0x769b0000	shlwapi
[f=-000001] Error: 0x76810000	kernel.appcore
[f=-000001] Error: 0x74010000	shcore
[f=-000001] Error: 0x762b0000	profapi
[f=-000001] Error: 0x76210000	OLEAUT32
[f=-000001] Error: 0x763f0000	msvcp_win
[f=-000001] Error: 0x77120000	SETUPAPI
[f=-000001] Error: 0x726d0000	MPR
[f=-000001] Error: 0x66680000	sfc
[f=-000001] Error: 0x714e0000	WINSPOOL
[f=-000001] Error: 0x73c20000	bcrypt
[f=-000001] Error: 0x714d0000	sfc_os
[f=-000001] Error: 0x64450000	SortServer2003Compat
[f=-000001] Error: 0x76080000	IMM32
[f=-000001] Error: 0x763d0000	IMAGEHLP
[f=-000001] Error: 0x11be0000	DevIL
[f=-000001] Error: 0x76320000	WS2_32
[f=-000001] Error: 0x70130000	GLU32
[f=-000001] Error: 0x70160000	OPENGL32
[f=-000001] Error: 0x6b800000	OpenAL32
[f=-000001] Error: 0x70780000	vorbisfile
[f=-000001] Error: 0x75850000	ole32
[f=-000001] Error: 0x62e80000	zlib1
[f=-000001] Error: 0x70e40000	libfreetype-6
[f=-000001] Error: 0x65180000	libfontconfig-1
[f=-000001] Error: 0x62aa0000	glew32
[f=-000001] Error: 0x6c740000	SDL2
[f=-000001] Error: 0x5fe40000	MSVCP80
[f=-000001] Error: 0x5fda0000	MSVCR80
[f=-000001] Error: 0x68140000	ogg
[f=-000001] Error: 0x6ff40000	DDRAW
[f=-000001] Error: 0x64cc0000	vorbis
[f=-000001] Error: 0x6f990000	WINMM
[f=-000001] Error: 0x68f40000	libexpat-1
[f=-000001] Error: 0x73ac0000	VERSION
[f=-000001] Error: 0x70120000	DCIMAN32
[f=-000001] Error: 0x0fe00000	WINMMBASE
[f=-000001] Error: 0x71450000	uxtheme
[f=-000001] Error: 0x764d0000	MSCTF
[f=-000001] Error: 0x515a0000	ltc_help32-121424
[f=-000001] Error: 0x76030000	WINTRUST
[f=-000001] Error: 0x759a0000	MSASN1
[f=-000001] Error: 0x76820000	CRYPT32
[f=-000001] Error: 0x51b90000	ltc_help32-116716
[f=-000001] Error: 0x71430000	dwmapi
[f=-000001] Error: 0x64430000	atiglpxx
[f=-000001] Error: 0x12820000	atioglxx
[f=-000001] Error: 0x6bcc0000	dxva2
[f=-000001] Error: 0x53810000	atigktxx
[f=-000001] Error: 0x53840000	atiadlxy
[f=-000001] Error: 0x769a0000	PSAPI
[f=-000001] Error: 0x6eb50000	PROPSYS
[f=-000001] Error: 0x6c9e0000	WTSAPI32
[f=-000001] Error: 0x6e700000	USERENV
[f=-000001] Error: 0x72270000	IPHLPAPI
[f=-000001] Error: 0x70030000	DEVOBJ
[f=-000001] Error: 0x74380000	clbcatq
[f=-000001] Error: 0x64420000	shfolder
[f=-000001] Error: 0x56a10000	dinput8
[f=-000001] Error: 0x56a00000	HID
[f=-000001] Error: 0x53800000	XInput1_4
[f=-000001] Error: 0x6e790000	dbghelp
[f=-000001] Error: Exception: Invalid handle (0xc0000008)
[f=-000001] Error: Exception Address: 0x77556e63
[f=-000001] Error: Stacktrace for Spring 103.0.1-723-g9cd5c5c85 develop:
[f=-000001] Error: (0) C:\WINDOWS\SYSTEM32\ntdll.dll [0x00026E63]
[f=-000001] Error: (1) C:\WINDOWS\SYSTEM32\ntdll.dll [0x00040045]
[f=-000001] Error: (2) C:\WINDOWS\SYSTEM32\ntdll.dll [0x0003FF65]
[f=-000001] Error: (3) C:\Program Files (x86)\Spring\spring.exe [0x009218D7]
[f=-000001] Error: (4) C:\Program Files (x86)\Spring\spring.exe [0x00923CE9]
[f=-000001] Error: (5) C:\Program Files (x86)\Spring\spring.exe [0x005225B5]
[f=-000001] Error: (6) C:\Program Files (x86)\Spring\spring.exe [0x005244BB]
[f=-000001] Error: (7) C:\WINDOWS\AppPatch\AcLayers.DLL [0x000192C0]
[f=-000001] Error: (8) C:\Program Files (x86)\Spring\spring.exe [0x004569DD]
[f=-000001] Error: (9) C:\Program Files (x86)\Spring\spring.exe [0x00456CEA]
[f=-000001] Error: (10) C:\Program Files (x86)\Spring\spring.exe [0x008142AD]
[f=-000001] Error: (11) C:\Program Files (x86)\Spring\spring.exe [0x00C38673]
[f=-000001] Error: (12) C:\Program Files (x86)\Spring\spring.exe [0x00D3D1B0]
[f=-000001] Error: (13) C:\Program Files (x86)\Spring\spring.exe [0x00A2E1FD]
[f=-000001] Error: (14) C:\Program Files (x86)\Spring\spring.exe [0x00C385FE]
[f=-000001] Error: (15) C:\Program Files (x86)\Spring\spring.exe [0x00A2B7E5]
[f=-000001] Error: (16) C:\Program Files (x86)\Spring\spring.exe [0x00D7D214]
[f=-000001] Error: (17) C:\Program Files (x86)\Spring\spring.exe [0x00865754]
[f=-000001] Error: (18) C:\Program Files (x86)\Spring\spring.exe [0x0084A650]
[f=-000001] Error: (19) C:\Program Files (x86)\Spring\spring.exe [0x004013DE]
[f=-000001] Error: (20) C:\WINDOWS\System32\KERNEL32.DLL [0x000162C4]
[f=-000001] Error: (21) C:\WINDOWS\SYSTEM32\ntdll.dll [0x00060FD9]
[f=-000001] Error: (22) C:\WINDOWS\SYSTEM32\ntdll.dll [0x00060FA4]
[f=-000001] Error: [ErrorMessageBox][1] msg="Spring has crashed:
  Invalid handle.

A stacktrace has been written to:
  C:\Users\Dylan\Documents\My Games\Spring\infolog.txt" cap="Spring: Unhandled exception" mainThread=1
[f=-000001] Error: [ErrorMessageBox][2]
[f=-000001] [SpringApp::ShutDown][1] fromRun=0
[f=-000001] [ThreadPool::SetThreadCount][1] wanted=0 current=3 maximum=4
[f=-000001] 	[async=0] threads=3 tasks=8 {sum,avg}{exec,wait}time={{0.000, 0.000}, {-0.000, -0.000}}ms
[f=-000001] 		thread=1 tasks=3 (0.000%) {sum,min,max,avg}{exec,wait}time={{2.000, 26815622259485953667405149450036771376238538147165407850490904037748120880141219468876731072439101251758985527996035988279982700968018793568384608207110144.000, 0.000, 26815622253243081764370255096496551823018798481648481193313770539532538687500203209927263452556217302126183536544934871527754301092734151332744906777034752.000}, {0.000, 0.000, 0.000, 0.000}}ms
[f=-000001] 		thread=2 tasks=5 (0.000%) {sum,min,max,avg}{exec,wait}time={{-26815622284151046822867937908046766429001879530635833284082910310195505004197253844167041777037488262884337991000562574769705813559378840148225181609885696.000, 0.000, -26815615859885194199148049996411692254958731641184786755447122887443528060147093953603748596333806855380063716372972101707507765623893139892867298012168192.000, -0.000}, {-0.000, 0.000, -0.000, 0.000}}ms
[f=-000001] 	[async=1] threads=3 tasks=2 {sum,avg}{exec,wait}time={{0.000, 0.000}, {0.000, 0.000}}ms
[f=-000001] 		thread=1 tasks=1 (0.000%) {sum,min,max,avg}{exec,wait}time={{0.000, 0.000, 0.000, 0.000}, {0.000, 0.000, 0.000, 0.000}}ms
[f=-000001] 		thread=2 tasks=1 (0.000%) {sum,min,max,avg}{exec,wait}time={{0.000, 0.000, 0.000, 0.000}, {0.000, 0.000, 0.000, 0.000}}ms
[f=-000001] [ThreadPool::SetThreadCount][2] workers=0
[f=-000001] [SpringApp::ShutDown][2]
[f=-000001] [SpringApp::ShutDown][3]
[f=-000001] Statistics for local connection:
Received: 0 bytes
Sent: 17 bytes

[f=-000001] [SpringApp::ShutDown][4]
[f=-000001] [SpringApp::ShutDown][5]
[f=-000001] [SpringApp::ShutDown][6]
[f=-000001] [SpringApp::ShutDown][7]
[LuaSocket] Dumping luasocket rules:
[LuaSocket] TCP_CONNECT ALLOW * -1
[LuaSocket] TCP_LISTEN  ALLOW * -1
[LuaSocket] UDP_LISTEN  ALLOW * -1
[SpringApp::ShutDown][8]
[WatchDog::DeregisterThread] deregistering controls for thread [main]
[WatchDog::Uninstall][1] hangDetectorThread=120e39d8
[WatchDog::Uninstall][2]
[WatchDog::Uninstall][3]
[SpringApp::ShutDown][9]
Error: [ErrorMessageBox][3]
Fatal: [ExitSpringProcess] msg="Spring has crashed:
  Invalid handle.

A stacktrace has been written to:
  C:\Users\Dylan\Documents\My Games\Spring\infolog.txt" cap="Spring: Unhandled exception" (forced=0)
Super Mario
Posts: 823
Joined: 21 Oct 2008, 02:54

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by Super Mario »

Have you tried building using VC?
Sprang
Posts: 37
Joined: 10 Oct 2008, 15:05

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by Sprang »

Bumpity bump. I ran into something that looks the same, at least on the surface. Spring crashes with "Invalid handle". Could you guys check this out? Thanks in advance!

I'm on windows 7 64-bit, and used MinGW-w64 version 4.9.1 build revision 0 downloaded fromhere, as was instructed on thewiki.

I'm a bit suspicious about the "C:\Windows\syswow64" references in my infolog, and whether there's some kind of 64/32 conflict. I did everything I could to make sure the spring would be compiled in 32 mode, as that looked like the safe default option, using the win32 mingwlibs etc.

Infolog:

Code: Select all

Using configuration source: "C:\Users\MAR\Documents\My Games\Spring\engine\Tropical01\springsettings.cfg"
Using additional configuration source: "C:\Users\MAR\Documents\My Games\Spring\springsettings.cfg"
============== <User Config> ==============
AdvSky = 1
AllowDeferredMapRendering = 1
AllowDeferredModelRendering = 1
BumpWaterAnisotropy = 2
BumpWaterDepthBits = 16
BumpWaterReflection = 2
BumpWaterRefraction = 0
BumpWaterShoreWaves = 0
BumpWaterTexSizeReflection = 64
CamFreeGroundOffset = 0
CamMode = 1
CamTimeExponent = 4.0
CamTimeFactor = 1.0
CubeTexSizeReflection = 64
CubeTexSizeSpecular = 64
DualScreenMiniMapOnLeft = 1
DynamicSky = 1
EdgeMoveDynamic = 0
EdgeMoveWidth = 0.003
FPSFOV = 90
FSAALevel = 8
FeatureDrawDistance = 60000
FeatureFadeDistance = 60000
FontSize = 18
Fullscreen = 0
GrassDetail = 0
GroundDecals = 5
GroundDetail = 256
HangTimeout = 0
HardwareCursor = 1
HighResLos = 1
InitialNetworkTimeout = 0
InputTextGeo = 0.26 0.73 0.02 0.028
LODScale = 1.000
LODScaleReflection = 1.000
LODScaleRefraction = 1.000
LODScaleShadow = 1.000
LastSelectedMap = Tropical-v2
LastSelectedMod = Zero-K v1.3.11.3
LastSelectedScript = Null AI
MapBorder = 0
MaxParticles = 50000
MaxSounds = 64
MaximumTransmissionUnit = 0
MiddleClickScrollSpeed = -0.005
MiniMapMarker = 0
MouseDragScrollThreshold = 0
OverheadScrollSpeed = 50
PitchAdjust = 1
ReconnectTimeout = 0
RotateLogFiles = 1
ScrollWheelSpeed = -25
ShadowMapSize = 8192
ShowClock = 0
ShowFPS = 1
ShowPlayerInfo = 0
SmoothLines = 0
SmoothPoints = 0
TreeRadius = 2514
UnitIconDist = 60000
UnitLodDist = 9999
VSync = 1
Water = 4
WindowBorderless = 1
WindowPosX = 0
WindowPosY = 0
XResolutionWindowed = 1920
YResolutionWindowed = 1080
snd_airAbsorption = 0.5
snd_volmaster = 49
============== </User Config> ==============
Available log sections: KeyBindings, AutohostInterface, GameServer, Net, CSMFGroundTextures, RoamMeshDrawer, BumpWater, DynWater, SkyBox, DecalsDrawerGL4, FarTextureHandler, Model, Piece, OBJParser, ModelRenderContainer, Shader, Texture, Font, CregSerializer, ArchiveScanner, VFS, Sound, LuaSocket, GroundMoveType, Path
Enabled log sections: Sound(Notice)
Enable or disable log sections using the LogSections configuration key
  or the SPRING_LOG_SECTIONS environment variable (both comma separated).
  Use "none" to disable the default log sections.
LogOutput initialized.
Spring 103.0.1-298-gaf1edb128 TropicalReplay
Build Environment: boost-105500, GNU libstdc++ version 20140716
Compiler Version:  gcc-4.9.1
Operating System:  Microsoft Windows
Microsoft Windows 7 Ultimate Edition, 64-bit Service Pack 1 (build 7601)
Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz; 16245MB RAM, 32488MB pagefile
Word Size:         32-bit (emulated)
         CPU Clock: win32::TimeGetTime
Physical CPU Cores: 4
 Logical CPU Cores: 8
[CMyMath::Init] CPU SSE mask: 127, flags:
	SSE 1.0:  1,  SSE 2.0:  1
	SSE 3.0:  1, SSSE 3.0:  1
	SSE 4.1:  1,  SSE 4.2:  1
	SSE 4.0A: 0,  SSE 5.0A: 0
	using streflop SSE FP-math mode, CPU supports SSE instructions
Supported Video modes on Display 1 x:0 y:0 1920x1080:
	640x480, 720x480, 720x576, 800x600, 1176x664, 1280x720, 1024x768, 1280x768, 1360x768, 1366x768, 1280x800, 1152x864, 1440x900, 1600x900, 1280x960, 1768x992, 1280x1024, 1600x1024, 1680x1050, 1920x1080
SDL version:  linked 2.0.4; compiled 2.0.4
GL version:   4.5.0 NVIDIA 355.60
GL vendor:    NVIDIA Corporation
GL renderer:  GeForce GTX 560 Ti/PCIe/SSE2
GLSL version: 4.50 NVIDIA
GLEW version: 1.5.8
Video RAM:    total 1024MB, available 595MB
SwapInterval: 1
FBO::maxSamples: 32
GL info:
	haveARB: 1, haveGLSL: 1, ATI hacks: 0
	FBO support: 1, NPOT-texture support: 1, 24bit Z-buffer support: 1
	maximum texture size: 16384, compress MIP-map textures: 0
	maximum SmoothPointSize: 190, maximum vec4 varying/attributes: 31/16
	maximum drawbuffers: 8, maximum recommended indices/vertices: 1048576/1048576
	number of UniformBufferBindings: 84 (64kB)
Using VSync
[InitOpenGL] video mode set to 1920x1080:24bit @60Hz 
[WatchDog::Install] disabled
[WatchDog] registering controls for thread [main]
[ThreadPool::SetThreadCount][1] #wanted=4 #current=1 #max=4
[ThreadPool::SetThreadCount][2] #threads=3
[DataDirs] Portable Mode!
Using read-write data directory: C:\Users\MAR\Documents\My Games\Spring\engine\Tropical01\
Using read-only data directory: C:\Users\MAR\Documents\My Games\Spring\
Scanning: C:\Users\MAR\Documents\My Games\Spring\maps
Scanning: C:\Users\MAR\Documents\My Games\Spring\games
Scanning: C:\Users\MAR\Documents\My Games\Spring\packages
Scanning: C:\Users\MAR\Documents\My Games\Spring\engine\Tropical01\base
CArchiveScanner: 55 ms
[f=-000001] [Sound] OpenAL info:
[f=-000001] [Sound]   Available Devices:
[f=-000001] [Sound]               Speakers (SteelSeries Siberia 800)
[f=-000001] [Sound]               S27D590-0 (2- NVIDIA High Definition Audio)
[f=-000001] [Sound]               Speakers (Realtek High Definition Audio)
[f=-000001] [Sound]               Realtek Digital Output (Realtek High Definition Audio)
[f=-000001] [Sound]               CABLE Input (VB-Audio Virtual Cable)
[f=-000001] [Sound]               Speakers (SteelSeries Siberia 800)
[f=-000001] [Sound]   Device:     OpenAL Soft
[f=-000001] [Sound]   Vendor:         OpenAL Community
[f=-000001] [Sound]   Version:        1.1 ALSOFT 1.16.0
[f=-000001] [Sound]   Renderer:       OpenAL Soft
[f=-000001] [Sound]   AL Extensions:  AL_EXT_ALAW AL_EXT_DOUBLE AL_EXT_EXPONENT_DISTANCE AL_EXT_FLOAT32 AL_EXT_IMA4 AL_EXT_LINEAR_DISTANCE AL_EXT_MCFORMATS AL_EXT_MULAW AL_EXT_MULAW_MCFORMATS AL_EXT_OFFSET AL_EXT_source_distance_model AL_LOKI_quadriphonic AL_SOFT_block_alignment AL_SOFT_buffer_samples AL_SOFT_buffer_sub_data AL_SOFT_deferred_updates AL_SOFT_direct_channels AL_SOFT_loop_points AL_SOFT_MSADPCM AL_SOFT_source_latency AL_SOFT_source_length
[f=-000001] [Sound]   ALC Extensions: ALC_ENUMERATE_ALL_EXT ALC_ENUMERATION_EXT ALC_EXT_CAPTURE ALC_EXT_DEDICATED ALC_EXT_disconnect ALC_EXT_EFX ALC_EXT_thread_local_context ALC_SOFTX_device_clock ALC_SOFTX_HRTF ALC_SOFT_loopback ALC_SOFTX_midi_interface ALC_SOFT_pause_device
[f=-000001] [Sound] Error:   EFX: AL_INVALID_VALUE (40963)
[f=-000001] [Sound] Error:   Initializing EFX failed!
[f=-000001] [Sound]   Max Sounds: 64
[f=-000001] [WatchDog] registering controls for thread [audio]
[f=-000001] Joysticks found: 0
[f=-000001] [ThreadPool::SetThreadCount][1] #wanted=3 #current=4 #max=4
[f=-000001] [ThreadPool::SetThreadCount][2] #threads=2
[f=-000001] [Threading] Main thread CPU affinity mask set: 252
[f=-000001] [InitOpenGL] video mode set to 1920x1080:24bit @60Hz 
[f=-000001] Hosting on: localhost:8452
[f=-000001] Connecting to local server
[f=-000001] [AddGameSetupArchivesToVFS] using map: Tropical-v2
[f=-000001] Checksums: game=0x2D7E0E32 map=0x9E763B04
[f=-000001] Error: Spring 103.0.1-298-gaf1edb128 TropicalReplay has crashed.
[f=-000001] Error: DLL information:
[f=-000001] Error: 0x00400000	spring
[f=-000001] Error: 0x77e10000	ntdll
[f=-000001] Error: 0x761f0000	kernel32
[f=-000001] Error: 0x75930000	KERNELBASE
[f=-000001] Error: 0x75a70000	ADVAPI32
[f=-000001] Error: 0x75740000	msvcrt
[f=-000001] Error: 0x76300000	sechost
[f=-000001] Error: 0x75980000	RPCRT4
[f=-000001] Error: 0x756b0000	SspiCli
[f=-000001] Error: 0x756a0000	CRYPTBASE
[f=-000001] Error: 0x6eea0000	GLU32
[f=-000001] Error: 0x5e0c0000	OPENGL32
[f=-000001] Error: 0x76150000	GDI32
[f=-000001] Error: 0x75bb0000	USER32
[f=-000001] Error: 0x77640000	LPK
[f=-000001] Error: 0x77440000	USP10
[f=-000001] Error: 0x73440000	DDRAW
[f=-000001] Error: 0x73dc0000	DCIMAN32
[f=-000001] Error: 0x75cb0000	SETUPAPI
[f=-000001] Error: 0x765a0000	CFGMGR32
[f=-000001] Error: 0x77790000	OLEAUT32
[f=-000001] Error: 0x774e0000	ole32
[f=-000001] Error: 0x76560000	DEVOBJ
[f=-000001] Error: 0x6e450000	dwmapi
[f=-000001] Error: 0x77980000	IMAGEHLP
[f=-000001] Error: 0x765d0000	SHELL32
[f=-000001] Error: 0x77730000	SHLWAPI
[f=-000001] Error: 0x72410000	WINMM
[f=-000001] Error: 0x77310000	WS2_32
[f=-000001] Error: 0x75730000	NSI
[f=-000001] Error: 0x112c0000	DevIL
[f=-000001] Error: 0x5e940000	MSVCP80
[f=-000001] Error: 0x5dbb0000	MSVCR80
[f=-000001] Error: 0x6b800000	OpenAL32
[f=-000001] Error: 0x70780000	vorbisfile
[f=-000001] Error: 0x68140000	ogg
[f=-000001] Error: 0x64cc0000	vorbis
[f=-000001] Error: 0x62e80000	zlib1
[f=-000001] Error: 0x70e40000	libfreetype-6
[f=-000001] Error: 0x65180000	libfontconfig-1
[f=-000001] Error: 0x68f40000	libexpat-1
[f=-000001] Error: 0x62aa0000	glew32
[f=-000001] Error: 0x6c740000	SDL2
[f=-000001] Error: 0x77350000	IMM32
[f=-000001] Error: 0x77660000	MSCTF
[f=-000001] Error: 0x73d80000	VERSION
[f=-000001] Error: 0x6df40000	nvapi
[f=-000001] Error: 0x76580000	profapi
[f=-000001] Error: 0x6e480000	uxtheme
[f=-000001] Error: 0x52b60000	nvoglv32
[f=-000001] Error: 0x73880000	WTSAPI32
[f=-000001] Error: 0x77240000	WINTRUST
[f=-000001] Error: 0x757f0000	CRYPT32
[f=-000001] Error: 0x77230000	MSASN1
[f=-000001] Error: 0x70850000	ntmarta
[f=-000001] Error: 0x75e50000	WLDAP32
[f=-000001] Error: 0x71820000	WINSTA
[f=-000001] Error: 0x75b20000	CLBCatQ
[f=-000001] Error: 0x6e400000	shfolder
[f=-000001] Error: 0x685a0000	MMDevApi
[f=-000001] Error: 0x70260000	PROPSYS
[f=-000001] Error: 0x6e630000	dsound
[f=-000001] Error: 0x711b0000	POWRPROF
[f=-000001] Error: 0x685e0000	AUDIOSES
[f=-000001] Error: 0x5e090000	dinput8
[f=-000001] Error: 0x5c7b0000	HID
[f=-000001] Error: 0x180f0000	XInput1_3
[f=-000001] Error: 0x73c90000	dbghelp
[f=-000001] Error: Exception: Invalid handle (0xc0000008)
[f=-000001] Error: Exception Address: 0x77e92519
[f=-000001] Error: Stacktrace for Spring 103.0.1-298-gaf1edb128 TropicalReplay:
[f=-000001] Error: (0) C:\Windows\SysWOW64\ntdll.dll [0x00082519]
[f=-000001] Error: (1) C:\Windows\SysWOW64\ntdll.dll [0x0004EA92]
[f=-000001] Error: (2) C:\Users\MAR\Documents\My Games\Spring\engine\Tropical01\spring.exe [0x008A2957]
[f=-000001] Error: (3) C:\Users\MAR\Documents\My Games\Spring\engine\Tropical01\spring.exe [0x008A4D69]
[f=-000001] Error: (4) C:\Users\MAR\Documents\My Games\Spring\engine\Tropical01\spring.exe [0x0051152F]
[f=-000001] Error: (5) C:\Users\MAR\Documents\My Games\Spring\engine\Tropical01\spring.exe [0x005132C4]
[f=-000001] Error: (6) C:\Windows\syswow64\msvcrt.dll [0x000098DA]
[f=-000001] Error: [ErrorMessageBox][1] msg="Spring has crashed:
  Invalid handle.

A stacktrace has been written to:
  C:\Users\MAR\Documents\My Games\Spring\engine\Tropical01\infolog.txt" IsMainThread()=1 fromMain=0
[f=-000001] Error: [ErrorMessageBox][2]
[f=-000001] [SpringApp::ShutDown][1]
[f=-000001] [ThreadPool::SetThreadCount][1] #wanted=0 #current=3 #max=4
[f=-000001] [ThreadPool::SetThreadCount][2] #threads=0
[f=-000001] [SpringApp::ShutDown][2]
[f=-000001] [SpringApp::ShutDown][3]
[f=-000001] Statistics for local connection:
Received: 0 bytes
Sent: 17 bytes

[f=-000001] [SpringApp::ShutDown][4]
[f=-000001] [WatchDog] deregistering controls for thread [audio]
[f=-000001] [SpringApp::ShutDown][5]
[f=-000001] [SpringApp::ShutDown][6]
[f=-000001] [SpringApp::ShutDown][7]
[LuaSocket] Dumping luasocket rules:
[LuaSocket] TCP_CONNECT ALLOW * -1
[LuaSocket] TCP_LISTEN  ALLOW * -1
[LuaSocket] UDP_LISTEN  ALLOW * -1
[SpringApp::ShutDown][8]
[WatchDog] deregistering controls for thread [main]
[WatchDog::Uninstall][1] hangDetectorThread=00000000
[SpringApp::ShutDown][9]
Error: [ErrorMessageBox][3]
Error: [ErrorMessageBox][4]
Fatal: Spring: Unhandled exception
Spring has crashed:
  Invalid handle.

A stacktrace has been written to:
  C:\Users\MAR\Documents\My Games\Spring\engine\Tropical01\infolog.txt
gdb:

Code: Select all

C:\springsources\test>gdb spring.exe
GNU gdb (GDB) 7.7.1
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-w64-mingw32".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from spring.exe...done.
(gdb) run
Starting program: C:\springsources\test\spring.exe
[New Thread 6776.0x1230]
[New Thread 6776.0x1190]
[New Thread 6776.0xb14]
[New Thread 6776.0x1a90]
[Thread 6776.0x1a90 exited with code 0]
[Thread 6776.0x1190 exited with code 0]
[New Thread 6776.0x19d4]
[New Thread 6776.0x1694]
[New Thread 6776.0x1028]
[New Thread 6776.0x1b30]
[Thread 6776.0x19d4 exited with code 0]
[Thread 6776.0x1694 exited with code 0]
[New Thread 6776.0xac8]
[New Thread 6776.0x1168]
[New Thread 6776.0x3d0]
[New Thread 6776.0x410]
[New Thread 6776.0x8bc]
[New Thread 6776.0x1f0]
[New Thread 6776.0x9bc]
[New Thread 6776.0x1840]
[Thread 6776.0x410 exited with code 0]
gdb: unknown target exception 0xc0000008 at 0x77e92519

Program received signal ?, Unknown signal.
0x77e92519 in ntdll!RtlUlonglongByteSwap () from C:\Windows\system32\ntdll.dll
(gdb)
(gdb) bt full
#0  0x77e92519 in ntdll!RtlUlonglongByteSwap ()
   from C:\Windows\system32\ntdll.dll
No symbol table info available.
#1  0x12feb09c in ?? ()
No symbol table info available.
#2  0x77e5ea92 in ntdll!RtlRandomEx () from C:\Windows\system32\ntdll.dll
No symbol table info available.
#3  0x008a2957 in lock (this=0x0)
    at C:/springsources/spring/rts/lib/asio/include/asio/detail/win_mutex.hpp:49

No locals.
#4  scoped_lock (m=..., this=<synthetic pointer>)
    at C:/springsources/spring/rts/lib/asio/include/asio/detail/scoped_lock.hpp:
45
No locals.
#5  do_use_service (factory=
    0xbca5d0 <asio::detail::service_registry::create<asio::datagram_socket_servi
ce<asio::ip::udp> >(asio::io_service&)>, key=<synthetic pointer>,
    this=0xfffffffc)
    at C:/springsources/spring/rts/lib/asio/include/asio/detail/impl/service_reg
istry.ipp:107
        lock = {<asio::detail::noncopyable> = {<No data fields>},
          mutex_ = @0x0, locked_ = <optimized out>}
        service = <optimized out>
---Type <return> to continue, or q <return> to quit---
        new_service = <optimized out>
#6  use_service<asio::datagram_socket_service<asio::ip::udp> > (
    this=0xfffffffc)
    at C:/springsources/spring/rts/lib/asio/include/asio/detail/impl/service_reg
istry.hpp:47
        key = {
          type_info_ = 0xec94bc <typeinfo for asio::detail::typeid_wrapper<asio:
:datagram_socket_service<asio::ip::udp> >>, id_ = 0x0}
        factory = 0xbca5d0 <asio::detail::service_registry::create<asio::datagra
m_socket_service<asio::ip::udp> >(asio::io_service&)>
#7  use_service<asio::datagram_socket_service<asio::ip::udp> > (ios=...)
    at C:/springsources/spring/rts/lib/asio/include/asio/impl/io_service.hpp:32
No locals.
#8  basic_io_object (io_service=..., this=<optimized out>)
    at C:/springsources/spring/rts/lib/asio/include/asio/basic_io_object.hpp:182

No locals.
#9  basic_socket (io_service=..., this=<optimized out>)
    at C:/springsources/spring/rts/lib/asio/include/asio/basic_socket.hpp:70
No locals.
#10 basic_datagram_socket (io_service=..., this=<optimized out>)
    at C:/springsources/spring/rts/lib/asio/include/asio/basic_datagram_socket.h
pp:69
---Type <return> to continue, or q <return> to quit---
No locals.
#11 netcode::UDPListener::TryBindSocket (port=<optimized out>,
    socket=<optimized out>, ip=...)
    at C:\springsources\spring\rts\System\Net\UDPListener.cpp:61
        err = {_M_value = 0,
          _M_cat = 0xe36bac <(anonymous namespace)::system_category_instance>}
        supportsIPv6 = <optimized out>
        addr = {impl_ = {data_ = {base = {sa_family = 0,
                sa_data = "\000\000\002\000\004\006\060B7\032£\000\004§"},
              v4 = {sin_family = 0, sin_port = 0, sin_addr = {S_un = {
                    S_un_b = {s_b1 = 2 '\002', s_b2 = 0 '\000',
                      s_b3 = 4 '\004', s_b4 = 6 '\006'}, S_un_w = {s_w1 = 2,
                      s_w2 = 1540}, S_addr = 100925442}},
                sin_zero = "0B7\032£\000\004§"}, v6 = {sin6_family = 0,
                sin6_port = 0, sin6_flowinfo = 100925442, sin6_addr = {u = {
                    Byte = "0B7\032£\000\004§\005\000\004\001@I-\030",
                    Word = {16944, 6711, 163, 42756, 5, 260, 18752, 6294}}}, {
                  sin6_scope_id = 0, sin6_scope_struct = {{{Zone = 0,
                        Level = 0}, Value = 0}}}}}}}
        errorMsg = <optimized out>
#12 0x008a4d69 in netcode::UDPListener::UDPListener (this=0x1a36af50,
    port=8452, ip="localhost")
    at C:\springsources\spring\rts\System\Net\UDPListener.cpp:33
        socket = std::shared_ptr (empty) 0x0
---Type <return> to continue, or q <return> to quit---
        err = ""
#13 0x0051152f in CGameServer::Initialize (this=this@entry=0x1709dfd8)
    at C:\springsources\spring\rts\Net\GameServer.cpp:207
No locals.
#14 0x005132c4 in CGameServer::CGameServer (this=0x1709dfd8,
    newClientSetup=std::shared_ptr (count 412531232, weak -1099967297) 0x28f9a8,
 newGameData=std::shared_ptr (count 412566744, weak -1) 0x28f9b0,
    newGameSetup=<error reading variable: Cannot access memory at address 0x3487
0db2>) at C:\springsources\spring\rts\Net\GameServer.cpp:177
No locals.
#15 0x00450fb2 in CPreGame::StartServer (this=<optimized out>,
    setupscript="[game]\n{\n[ai0]\n{\nhost=0;\nname=AI: Null AI;\nshortname=Null
 AI;\nteam=1;\n}\n[allyteam0]\n{\nnumallies=0;\n}\n[allyteam1]\n{\nnumallies=0;\
n}\n[modoptions]\n{\nmaxspeed=20;\n}\n[player0]\n{\nname=UnnamedPlayer;\nteam=0;
\n"...) at C:\springsources\spring\rts\Game\PreGame.cpp:241
        startserver = {starttime = {static binder = {class_ = {
                members = std::vector of length 1, capacity 1 = {{
                    name = 0xe7fccb <CSWTCH.105+247> "x", type =
    std::shared_ptr (count 1, weak 0) 0x12fd9558, offset = 0, alignment = 8,
                    flags = 0}}, binder = 0xf27860 <spring_time::binder>,
                name = "spring_time", size = 8, alignment = 8,
                serializeProc = {<std::_Maybe_unary_or_binary_function<void, voi
d*, creg::ISerializer*>> = {<std::binary_function<void*, creg::ISerializer*, voi
d>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {
---Type <return> to continue, or q <return> to quit---
                    static _M_max_size = 8, static _M_max_align = 4,
                    _M_functor = {_M_unused = {_M_object = 0x12fd95d0,
                        _M_const_object = 0x12fd95d0,
                        _M_function_pointer = 0x12fd95d0,
                        _M_member_pointer = (void (std::_Undefined_class::*)(std
::_Undefined_class * const)) 0x12fd95d0, this adjustment 2686352},
                      _M_pod_data = "Ðý\022\220ý("},
                    _M_manager = 0xcc19b0 <std::_Function_base::_Base_manager<vo
id creg::Class::SetSerialize<spring_time, void (spring_time::*)(creg::ISerialize
r*)>(spring_time*, void (spring_time::*)(creg::ISerializer*))::{lambda(void*, cr
eg::ISerializer*)#1}>::_M_manager(std::_Any_data&, std::_Function_base::_Base_ma
nager<void creg::Class::SetSerialize<spring_time, void (spring_time::*)(creg::IS
erializer*)>(spring_time*, void (spring_time::*)(creg::ISerializer*))::{lambda(v
oid*, creg::ISerializer*)#1}> const&, std::_Manager_operation)>},
                  _M_invoker = 0xcd2860 <std::_Function_handler<void (void*, cre
g::ISerializer*), void creg::Class::SetSerialize<spring_time, void (spring_time:
:*)(creg::ISerializer*)>(spring_time*, void (spring_time::*)(creg::ISerializer*)
)::{lambda(void*, creg::ISerializer*)#1}>::_M_invoke(std::_Any_data const&, void
*, creg::ISerializer*)>},
                postLoadProc = {<std::_Maybe_unary_or_binary_function<void, void
*>> = {<std::unary_function<void*, void>> = {<No data fields>}, <No data fields>
}, <std::_Function_base> = {static _M_max_size = 8,
                    static _M_max_align = 4, _M_functor = {_M_unused = {
                        _M_object = 0x0, _M_const_object = 0x0,
---Type <return> to continue, or q <return> to quit---
                        _M_function_pointer = 0x0, _M_member_pointer = NULL},
                      _M_pod_data = "\000\000\000\000\000\000\000"},
                    _M_manager = 0x0}, _M_invoker = 0x0},
                currentMemberFlags = 0}, base = 0x0, flags = creg::CF_None,
              name = 0xe7fdec <CSWTCH.105+536> "spring_time", size = 8,
              alignment = 8, hasVTable = false, isCregStruct = true,
              constructor = 0x7ebcb0 <spring_time::_ConstructInstance(void*)>, d
estructor = 0x7ebcd0 <spring_time::_DestructInstance(void*)>},
            static creg_hasVTable = false, static creg_isStruct = true,
            x = 3195000000, static xs = 13842857000000},
          name = "PreGame::StartServer"}
        modArchive = "32021b1ddb3732ebabe7731c220a5c17.sdp"
        mapArchive = "Tropical.sd7"
        modChecksum = <optimized out>
        mapChecksum = <optimized out>
#16 0x00451739 in CPreGame::LoadSetupscript (this=<optimized out>,
    script="[game]\n{\n[ai0]\n{\nhost=0;\nname=AI: Null AI;\nshortname=Null AI;\
nteam=1;\n}\n[allyteam0]\n{\nnumallies=0;\n}\n[allyteam1]\n{\nnumallies=0;\n}\n[
modoptions]\n{\nmaxspeed=20;\n}\n[player0]\n{\nname=UnnamedPlayer;\nteam=0;\n"..
.) at C:\springsources\spring\rts\Game\PreGame.cpp:100
No locals.
#17 0x007b501d in SelectMenu::Single (this=<optimized out>)
    at C:\springsources\spring\rts\Menu\SelectMenu.cpp:203
No locals.
---Type <return> to continue, or q <return> to quit---
#18 0x00c89ae0 in std::function<void ()>::operator()() const (
    this=<optimized out>)
    at C:/PROGRA~2/MINGW-~1/I686-4~1.1-P/mingw32/i686-w64-mingw32/include/c++/fu
nctional:2439
No locals.
#19 0x009afa5d in operator() (this=0x1896d098)
    at C:/springsources/spring/rts/lib/slimsig/include/slimsig/detail/slot.h:140

No locals.
#20 emit (this=0x171f45e0)
    at C:/springsources/spring/rts/lib/slimsig/include/slimsig/detail/signal_bas
e.h:153
        scope = {signal = @0x171f45e0}
        end = 0
#21 agui::Button::HandleEventSelf (this=0x171f45b8, ev=...)
    at C:\springsources\spring\rts\aGui\Button.cpp:79
No locals.
#22 0x009ad075 in agui::GuiElement::HandleEvent (this=0x171f45b8, ev=...)
    at C:\springsources\spring\rts\aGui\GuiElement.cpp:41
No locals.
#23 0x009ad045 in agui::GuiElement::HandleEvent (this=0x171f44c8, ev=...)
    at C:\springsources\spring\rts\aGui\GuiElement.cpp:45
        it =
#24 0x009ad045 in agui::GuiElement::HandleEvent (this=0x1305f220, ev=...)
---Type <return> to continue, or q <return> to quit---
    at C:\springsources\spring\rts\aGui\GuiElement.cpp:45
        it =
#25 0x009ab8f1 in agui::Gui::HandleEvent (this=0x171c4808, ev=...)
    at C:\springsources\spring\rts\aGui\Gui.cpp:123
        it = {element = , asBackground = true}
        handler = {element = , asBackground = 32}
#26 0x00cd2a04 in operator()<const SDL_Event&, void> (
    __object=<optimized out>, this=<optimized out>)
    at C:/PROGRA~2/MINGW-~1/I686-4~1.1-P/mingw32/i686-w64-mingw32/include/c++/fu
nctional:569
No locals.
#27 __call<bool, SDL_Event const&, 0u, 1u> (__args=<optimized out>,
    this=<optimized out>)
    at C:/PROGRA~2/MINGW-~1/I686-4~1.1-P/mingw32/i686-w64-mingw32/include/c++/fu
nctional:1264
No locals.
#28 operator()<const SDL_Event&, bool> (this=<optimized out>)
    at C:/PROGRA~2/MINGW-~1/I686-4~1.1-P/mingw32/i686-w64-mingw32/include/c++/fu
nctional:1323
No locals.
#29 std::_Function_handler<void (SDL_Event const&), std::_Bind<std::_Mem_fn<bool
 (agui::Gui::*)(SDL_Event const&)> (agui::Gui*, std::_Placeholder<1>)> >::_M_inv
oke(std::_Any_data const&, SDL_Event const&) (__functor=..., __args#0=...)
    at C:/PROGRA~2/MINGW-~1/I686-4~1.1-P/mingw32/i686-w64-mingw32/include/c++/f-
--Type <return> to continue, or q <return> to quit---
unctional:2039
No locals.
#30 0x00c89958 in std::function<void (SDL_Event const&)>::operator()(SDL_Event c
onst&) const (this=this@entry=0x171c4970, __args#0=...)
    at C:/PROGRA~2/MINGW-~1/I686-4~1.1-P/mingw32/i686-w64-mingw32/include/c++/fu
nctional:2439
No locals.
#31 0x007d824a in operator() (args#0=..., this=0x171c4970)
    at C:/springsources/spring/rts/lib/slimsig/include/slimsig/detail/slot.h:140

No locals.
#32 emit (args#0=..., this=<optimized out>)
    at C:/springsources/spring/rts/lib/slimsig/include/slimsig/detail/signal_bas
e.h:153
        scope = {signal = @0xf25880}
        end = 2
#33 PushEvent (ev=..., this=<optimized out>)
    at C:\springsources\spring\rts\System\Input\InputHandler.cpp:14
No locals.
#34 InputHandler::PushEvents (this=<optimized out>)
    at C:\springsources\spring\rts\System\Input\InputHandler.cpp:25
        myScopedTimerFromMakro = {<BasicTimer> = {<spring::noncopyable> = {<No d
ata fields>}, hash = 1589487868, starttime = {static binder = {class_ = {
                  members = std::vector of length 1, capacity 1 = {{
---Type <return> to continue, or q <return> to quit---
                      name = 0xe7fccb <CSWTCH.105+247> "x",
                      type = std::shared_ptr (count 1, weak 0) 0x12fd9558,
                      offset = 0, alignment = 8, flags = 0}},
                  binder = 0xf27860 <spring_time::binder>,
                  name = "spring_time", size = 8, alignment = 8,
                  serializeProc = {<std::_Maybe_unary_or_binary_function<void, v
oid*, creg::ISerializer*>> = {<std::binary_function<void*, creg::ISerializer*, v
oid>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {
                      static _M_max_size = 8, static _M_max_align = 4,
                      _M_functor = {_M_unused = {_M_object = 0x12fd95d0,
                          _M_const_object = 0x12fd95d0,
                          _M_function_pointer = 0x12fd95d0,
                          _M_member_pointer = (void (std::_Undefined_class::*)(s
td::_Undefined_class * const)) 0x12fd95d0, this adjustment 2686352},
                        _M_pod_data = "Ðý\022\220ý("},
                      _M_manager = 0xcc19b0 <std::_Function_base::_Base_manager<
void creg::Class::SetSerialize<spring_time, void (spring_time::*)(creg::ISeriali
zer*)>(spring_time*, void (spring_time::*)(creg::ISerializer*))::{lambda(void*,
creg::ISerializer*)#1}>::_M_manager(std::_Any_data&, std::_Function_base::_Base_
manager<void creg::Class::SetSerialize<spring_time, void (spring_time::*)(creg::
ISerializer*)>(spring_time*, void (spring_time::*)(creg::ISerializer*))::{lambda
(void*, creg::ISerializer*)#1}> const&, std::_Manager_operation)>},
                    _M_invoker = 0xcd2860 <std::_Function_handler<void (void*, c
reg::ISerializer*), void creg::Class::SetSerialize<spring_time, void (spring_t--
-Type <return> to continue, or q <return> to quit---
ime::*)(creg::ISerializer*)>(spring_time*, void (spring_time::*)(creg::ISerializ
er*))::{lambda(void*, creg::ISerializer*)#1}>::_M_invoke(std::_Any_data const&,
void*, creg::ISerializer*)>},
                  postLoadProc = {<std::_Maybe_unary_or_binary_function<void, vo
id*>> = {<std::unary_function<void*, void>> = {<No data fields>}, <No data field
s>}, <std::_Function_base> = {static _M_max_size = 8,
                      static _M_max_align = 4, _M_functor = {_M_unused = {
                          _M_object = 0x0, _M_const_object = 0x0,
                          _M_function_pointer = 0x0,
                          _M_member_pointer = NULL},
                        _M_pod_data = "\000\000\000\000\000\000\000"},
                      _M_manager = 0x0}, _M_invoker = 0x0},
                  currentMemberFlags = 0}, base = 0x0, flags = creg::CF_None,
                name = 0xe7fdec <CSWTCH.105+536> "spring_time", size = 8,
                alignment = 8, hasVTable = false, isCregStruct = true,
                constructor = 0x7ebcb0 <spring_time::_ConstructInstance(void*)>,
 destructor = 0x7ebcd0 <spring_time::_DestructInstance(void*)>},
              static creg_hasVTable = false, static creg_isStruct = true,
              x = 3195000000, static xs = 13842857000000}, nameIterator = {
              first = 1589487868,
              second = "Misc::InputHandler::PushEvents"}},
          autoShowGraph = false, it = {first = 1589487868, second = 1}}
        event = {type = 1026, common = {type = 1026, timestamp = 3191},
          window = {type = 1026, timestamp = 3191, windowID = 1,
---Type <return> to continue, or q <return> to quit---
            event = 0 '\000', padding1 = 0 '\000', padding2 = 0 '\000',
            padding3 = 0 '\000', data1 = 1812004865, data2 = 483}, key = {
            type = 1026, timestamp = 3191, windowID = 1, state = 0 '\000',
            repeat = 0 '\000', padding2 = 0 '\000', padding3 = 0 '\000',
            keysym = {scancode = 1812004865, sym = 483, mod = 239,
              unused = 2684924}}, edit = {type = 1026, timestamp = 3191,
            windowID = 1,
            text = "\000\000\000\000\001\000\001lã\001\000\000ï\000\000\000ü÷(\0
00\000\000\000\000(÷(\000\034\000\036", start = 1820518580,
            length = 2684700}, text = {type = 1026, timestamp = 3191,
            windowID = 1,
            text = "\000\000\000\000\001\000\001lã\001\000\000ï\000\000\000ü÷(\0
00\000\000\000\000(÷(\000\034\000\036"}, motion = {type = 1026,
            timestamp = 3191, windowID = 1, which = 0, state = 1812004865,
            x = 483, y = 239, xrel = 2684924, yrel = 0}, button = {
            type = 1026, timestamp = 3191, windowID = 1, which = 0,
            button = 1 '\001', state = 0 '\000', clicks = 1 '\001',
            padding1 = 108 'l', x = 483, y = 239}, wheel = {type = 1026,
            timestamp = 3191, windowID = 1, which = 0, x = 1812004865,
            y = 483, direction = 239}, jaxis = {type = 1026,
            timestamp = 3191, which = 1, axis = 0 '\000',
            padding1 = 0 '\000', padding2 = 0 '\000', padding3 = 0 '\000',
            value = 1, padding4 = 27649}, jball = {type = 1026,
            timestamp = 3191, which = 1, ball = 0 '\000',
---Type <return> to continue, or q <return> to quit---
            padding1 = 0 '\000', padding2 = 0 '\000', padding3 = 0 '\000',
            xrel = 1, yrel = 27649}, jhat = {type = 1026, timestamp = 3191,
            which = 1, hat = 0 '\000', value = 0 '\000', padding1 = 0 '\000',
            padding2 = 0 '\000'}, jbutton = {type = 1026, timestamp = 3191,
            which = 1, button = 0 '\000', state = 0 '\000',
            padding1 = 0 '\000', padding2 = 0 '\000'}, jdevice = {
            type = 1026, timestamp = 3191, which = 1}, caxis = {type = 1026,
            timestamp = 3191, which = 1, axis = 0 '\000',
            padding1 = 0 '\000', padding2 = 0 '\000', padding3 = 0 '\000',
            value = 1, padding4 = 27649}, cbutton = {type = 1026,
            timestamp = 3191, which = 1, button = 0 '\000', state = 0 '\000',
            padding1 = 0 '\000', padding2 = 0 '\000'}, cdevice = {
            type = 1026, timestamp = 3191, which = 1}, adevice = {
            type = 1026, timestamp = 3191, which = 1, iscapture = 0 '\000',
            padding1 = 0 '\000', padding2 = 0 '\000', padding3 = 0 '\000'},
          quit = {type = 1026, timestamp = 3191}, user = {type = 1026,
            timestamp = 3191, windowID = 1, code = 0, data1 = 0x6c010001,
            data2 = 0x1e3}, syswm = {type = 1026, timestamp = 3191, msg =
    0x1}, tfinger = {type = 1026, timestamp = 3191, touchId = 1,
            fingerId = 2076281208833, x = 3.34910333e-043,
            y = 3.76237988e-039, dx = 0, dy = 3.7620828e-039,
            pressure = 2.75510412e-039}, mgesture = {type = 1026,
            timestamp = 3191, touchId = 1, dTheta = 6.23805797e+026,
            dDist = 6.76827158e-043, x = 3.34910333e-043,
---Type <return> to continue, or q <return> to quit---
            y = 3.76237988e-039, numFingers = 0, padding = 0}, dgesture = {
            type = 1026, timestamp = 3191, touchId = 1,
            gestureId = 2076281208833, numFingers = 239,
            error = 3.76237988e-039, x = 0, y = 3.7620828e-039}, drop = {
            type = 1026, timestamp = 3191,
            file = 0x1 <error: Cannot access memory at address 0x1>},
          padding = "\002\004\000\000w\f\000\000\001\000\000\000\000\000\000\000
\001\000\001lã\001\000\000ï\000\000\000ü÷(\000\000\000\000\000(÷(\000\034\000\03
6\000´è'l\034÷(\000\000\000\000"}
#35 0x00805a44 in SpringApp::Run (this=this@entry=0x28fe14)
    at C:\springsources\spring\rts\System\SpringApp.cpp:905
        __FUNCTION__ = "Run"
#36 0x007e7fef in Run (argc=1, argv=0x3c15e8)
    at C:\springsources\spring\rts\System\Main.cpp:48
        app = {inputFile = "",
          clientSetup = std::shared_ptr (count 5, weak 0) 0x170dafa8}
        ret = -1
        err = <optimized out>
#37 0x00dd7824 in main (argc=1, argv=0x3c15e8)
    at C:\springsources\spring\rts\System\Main.cpp:109
No locals.
(gdb)
Edit: Part of the gdb log was missing, added.
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by abma »

does the official build work without issues?
sprunk
Posts: 100
Joined: 29 Jun 2015, 07:36

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by sprunk »

I had the invalid handle problem too and it seems to have been caused by lack of migwlibs: https://github.com/spring/mingwlibs - these need to be put in the spring folder.
Sprang
Posts: 37
Joined: 10 Oct 2008, 15:05

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by Sprang »

Hi abma and sprunk,

The spring builds from here work just fine, whether they're 32 or 64: https://springrts.com/dl/buildbot/default/develop/

I also tried compiling the latest develop version of spring from 24.6.2017, and got the same issues with it.

Putting mingwlibs to the spring engine folder didn't help either.
Last edited by Sprang on 25 Jun 2017, 17:34, edited 1 time in total.
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by abma »

Sprang wrote:Putting mingwlibs to the spring engine folder didn't help either.
this instruction is a bit vague: you need to put all files from https://github.com/spring/mingwlibs/tree/master/dll next to spring.exe or run "make install" and run the installed spring.exe.
Sprang
Posts: 37
Joined: 10 Oct 2008, 15:05

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by Sprang »

I see. I've compiled using make install, so I've already had the dll files in the spring folder.
Super Mario
Posts: 823
Joined: 21 Oct 2008, 02:54

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by Super Mario »

Did you download the source files using git or manually?
Sprang
Posts: 37
Joined: 10 Oct 2008, 15:05

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by Sprang »

Cloned from git.
Super Mario
Posts: 823
Joined: 21 Oct 2008, 02:54

Re: Compiled on Windows, "Spring has crashed: Invalid handle"

Post by Super Mario »

Did you clone the mingw lib files in the spring source folder? Did cmake find it?
Post Reply

Return to “Engine”