2025-07-21 13:12 CEST

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0004222Spring engineGeneralpublic2013-12-26 23:19
Reportercleanrock 
Assigned ToKloot 
PrioritynormalSeveritycrashReproducibilityhave not tried
StatusresolvedResolutionfixed 
Product Version95.0.1+git 
Target Version96.0Fixed in Version 
Summary0004222: crash on game exit
DescriptionSpring 95.0.1-208-g8871215 develop
Using game: Zero-K v1.1.12.4

At least me and gfrog experienced this crash at game exit.
I think Team pointer is invalid in CUnitDrawer::SetBasicTeamColour.

I moved this from 4053.
Additional Information[f=0070155] Error: Segmentation fault (SIGSEGV) in spring 95.0.1-208-g8871215 develop
[f=0070155] Error: Stacktrace for Spring 95.0.1-208-g8871215 develop:
[f=0070155] Error: <0> /usr/lib/libc.so.6(+0x35390) [0x7f68559e6390]
[f=0070155] Error: <1> /home/johanr/my_projects/spring/rts/Rendering/UnitDrawer.cpp:1277
[f=0070155] Error: <2> /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:755
[f=0070155] Error: <3> /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:470
[f=0070155] Error: <4> /usr/include/c++/4.8.2/bits/stl_tree.h:270
[f=0070155] Error: <5> /usr/include/c++/4.8.2/bits/stl_tree.h:189
[f=0070155] Error: <6> /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:649
[f=0070155] Error: <7> /home/johanr/my_projects/spring/rts/Rendering/WorldDrawer.cpp:206 (discriminator 1)
[f=0070155] Error: <8> /home/johanr/my_projects/spring/rts/Game/Game.cpp:1288
[f=0070155] Error: <9> /usr/include/c++/4.8.2/bits/stl_tree.h:447
[f=0070155] Error: <10> /home/johanr/my_projects/spring/rts/Game/UnsyncedActionExecutor.h:42
[f=0070155] Error: <11> /home/johanr/my_projects/spring/rts/Game/UI/MouseHandler.cpp:202
[f=0070155] Error: <12> /home/johanr/my_projects/spring/rts/System/Main.cpp:126
[f=0070155] Error: <13> /usr/lib/libc.so.6(__libc_start_main+0xf5) [0x7f68559d2b05]
[f=0070155] Error: <14> ??:?
[f=0070155] Error: [ErrorMessageBox][1] msg="Spring has crashed:
Segmentation fault (SIGSEGV).
TagsNo tags attached.
Checked infolog.txt for Errors
Attached Files
  • txt file icon infolog_cr_20131223.txt (62,646 bytes) 2013-12-25 10:03 -
    txt file icon infolog_cr_20131223.txt (62,646 bytes) 2013-12-25 10:03 +
  • txt file icon access_violation_208_gfrog.txt (108,280 bytes) 2013-12-25 10:04 -
    txt file icon access_violation_208_gfrog.txt (108,280 bytes) 2013-12-25 10:04 +
  • txt file icon bt_full.txt (7,234 bytes) 2013-12-26 09:51 -
    #0  CUnitDrawer::SetBasicTeamColour (team=<optimized out>, alpha=1) at /home/johanr/my_projects/spring/rts/Rendering/UnitDrawer.cpp:1277
            col = 0xad <Address 0xad out of bounds>
            texConstant = {0, 0, -2.51819055e+31, 4.59163468e-41}
            matConstant = {9.71304814e-09, 0, -5.40901701e+31, 4.59163468e-41}
    #1  0x000000000076710a in CProjectileDrawer::DrawProjectileModel (this=this@entry=0x7fff979796d0, p=0x31937c20, shadowPass=shadowPass@entry=false)
        at /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:755
            wp = 0x31937c20
    #2  0x00000000007689b3 in CProjectileDrawer::DrawProjectile (this=this@entry=0x7fff979796d0, pro=0x31937c20, drawReflection=drawReflection@entry=false, 
        drawRefraction=drawRefraction@entry=false) at /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:468
            owner = <optimized out>
            visible = true
    #3  0x0000000000768b72 in CProjectileDrawer::DrawProjectilesSet (this=this@entry=0x7fff979796d0, 
        projectiles=Python Exception <type 'exceptions.IndexError'> list index out of range: 
    std::set with 1 elements, drawReflection=drawReflection@entry=false, drawRefraction=drawRefraction@entry=false)
        at /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:430
            setIt = 
    #4  0x0000000000768bf2 in CProjectileDrawer::DrawProjectiles (this=this@entry=0x7fff979796d0, modelType=modelType@entry=1, numFlyingPieces=numFlyingPieces@entry=76287, 
        drawnPieces=drawnPieces@entry=0x7fffffffe0cc, drawReflection=drawReflection@entry=false, drawRefraction=drawRefraction@entry=false)
        at /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:421
            binIt = {first = 76, second = std::set with 1 elements = {[0] = }}
    #5  0x0000000000768d30 in CProjectileDrawer::Draw (this=0x7fff979796d0, drawReflection=drawReflection@entry=false, drawRefraction=drawRefraction@entry=false)
        at /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:648
            modelType = 1
            numFlyingPieces = 76287
            drawnPieces = 0
    #6  0x00000000007a2ed0 in CWorldDrawer::Draw (this=<optimized out>) at /home/johanr/my_projects/spring/rts/Rendering/WorldDrawer.cpp:206
            myScopedTimerFromMakro = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 2429, starttime = {static binder = {class_ = 0x11d1d50, 
                    base = 0x0, flags = creg::CF_None, memberRegistrator = 0x10ed8d0 <spring_time::memberRegistrator>, name = 0xd28583 "spring_time", size = 8, alignment = 8, 
                    hasVTable = false, constructor = 0x95fd60 <spring_time::_ConstructInstance(void*)>, destructor = 0x95fd70 <spring_time::_DestructInstance(void*)>, 
                    nextBinder = 0x10ed780 <CRectangleOptimizer::binder>}, static memberRegistrator = 0x10ed958 <spring_timemreg>, static hasVTable = false, 
                  x = 1388047184842272378, static xs = 1388045857043791668}, nameIterator = {first = 2429, second = "WorldDrawer::Projectiles"}}, autoShowGraph = false, it = {
                first = 2429, second = 1}}
            myScopedTimerFromMakro = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 1783, starttime = {static binder = {class_ = 0x11d1d50, 
                    base = 0x0, flags = creg::CF_None, memberRegistrator = 0x10ed8d0 <spring_time::memberRegistrator>, name = 0xd28583 "spring_time", size = 8, alignment = 8, 
                    hasVTable = false, constructor = 0x95fd60 <spring_time::_ConstructInstance(void*)>, destructor = 0x95fd70 <spring_time::_DestructInstance(void*)>, 
                    nextBinder = 0x10ed780 <CRectangleOptimizer::binder>}, static memberRegistrator = 0x10ed958 <spring_timemreg>, static hasVTable = false, 
                  x = 1388047184839778013, static xs = 1388045857043791668}, nameIterator = {first = 1783, second = "WorldDrawer::Total"}}, autoShowGraph = false, it = {
                first = 1783, second = 1}}
            gd = 0x7fff8994d9c0
            plane_below = {0, -1, 0, 0}
            plane_above = {0, 1, 0, 0}
    #7  0x00000000004cc354 in CGame::Draw (this=0x177bc30) at /home/johanr/my_projects/spring/rts/Game/Game.cpp:1274
            currentTimePreUpdate = <optimized out>
            doDrawWorld = true
            currentTimePreDraw = {static binder = {class_ = 0x11d1d50, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x10ed8d0 <spring_time::memberRegistrator>, 
                name = 0xd28583 "spring_time", size = 8, alignment = 8, hasVTable = false, constructor = 0x95fd60 <spring_time::_ConstructInstance(void*)>, 
                destructor = 0x95fd70 <spring_time::_DestructInstance(void*)>, nextBinder = 0x10ed780 <CRectangleOptimizer::binder>}, 
              static memberRegistrator = 0x10ed958 <spring_timemreg>, static hasVTable = false, x = 1388047184836262117, static xs = 1388045857043791668}
            myScopedTimerFromMakro = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 1388047184, starttime = {static binder = {
                    class_ = 0x11d1d50, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x10ed8d0 <spring_time::memberRegistrator>, name = 0xd28583 "spring_time", 
                    size = 8, alignment = 8, hasVTable = false, constructor = 0x95fd60 <spring_time::_ConstructInstance(void*)>, 
                    destructor = 0x95fd70 <spring_time::_DestructInstance(void*)>, nextBinder = 0x10ed780 <CRectangleOptimizer::binder>}, 
                  static memberRegistrator = 0x10ed958 <spring_timemreg>, static hasVTable = false, x = 811742982, static xs = 1388045857043791668}, 
                nameIterator = <error reading variable>
            currentTimePostDraw = <optimized out>
    #8  0x000000000097c07c in SpringApp::Update (this=this@entry=0x7fffffffe580) at /home/johanr/my_projects/spring/rts/System/SpringApp.cpp:966
            cputimer = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 1972, starttime = {static binder = {class_ = 0x11d1d50, base = 0x0, 
                    flags = creg::CF_None, memberRegistrator = 0x10ed8d0 <spring_time::memberRegistrator>, name = 0xd28583 "spring_time", size = 8, alignment = 8, 
                    hasVTable = false, constructor = 0x95fd60 <spring_time::_ConstructInstance(void*)>, destructor = 0x95fd70 <spring_time::_DestructInstance(void*)>, 
                    nextBinder = 0x10ed780 <CRectangleOptimizer::binder>}, static memberRegistrator = 0x10ed958 <spring_timemreg>, static hasVTable = false, 
                  x = 1388047184811742982, static xs = 1388045857043791668}, nameIterator = {first = 1972, second = "GameController::Draw"}}, autoShowGraph = false, it = {
                first = 1972, second = 1}}
            ret = <optimized out>
    #9  0x0000000000980efa in SpringApp::Run (this=this@entry=0x7fffffffe580) at /home/johanr/my_projects/spring/rts/System/SpringApp.cpp:1034
            __FUNCTION__ = "Run"
    #10 0x000000000095c065 in Run (argc=argc@entry=2, argv=argv@entry=0x7fffffffe838) at /home/johanr/my_projects/spring/rts/System/Main.cpp:65
            app = {cmdline = 0x11bce80}
            ret = -1
            err = <optimized out>
            __FUNCTION__ = "Run"
    #11 0x000000000048284c in main (argc=2, argv=0x7fffffffe838) at /home/johanr/my_projects/spring/rts/System/Main.cpp:125
    No locals.
    
    txt file icon bt_full.txt (7,234 bytes) 2013-12-26 09:51 +
  • txt file icon bt_threads.txt (11,720 bytes) 2013-12-26 09:51 -
    Thread 13 (Thread 0x7fffd899d700 (LWP 9950)):
    #0  0x00007ffff3a415a7 in sched_yield () from /usr/lib/libc.so.6
    #1  0x000000000095ff27 in __gthread_yield () at /usr/include/c++/4.8.2/x86_64-unknown-linux-gnu/bits/gthr-default.h:692
    #2  yield () at /usr/include/c++/4.8.2/thread:259
    #3  thread_yield () at /home/johanr/my_projects/spring/rts/System/Misc/SpringTime.cpp:198
    #4  spring_time::sleep (this=this@entry=0x7fffd899cce0) at /home/johanr/my_projects/spring/rts/System/Misc/SpringTime.cpp:216
    #5  0x00000000005a68a1 in CGameServer::UpdateLoop (this=0x1775080) at /home/johanr/my_projects/spring/rts/Net/GameServer.cpp:2498
    #6  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    #7  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    #8  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    
    Thread 12 (Thread 0x7fffe813a700 (LWP 9949)):
    #0  0x00007ffff793712d in nanosleep () from /usr/lib/libpthread.so.0
    #1  0x00007ffff456103a in ?? () from /usr/lib/libopenal.so.1
    #2  0x00007ffff456c4c3 in ?? () from /usr/lib/libopenal.so.1
    #3  0x00007ffff456082a in ?? () from /usr/lib/libopenal.so.1
    #4  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    #5  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    
    Thread 11 (Thread 0x7fffd919e700 (LWP 9948)):
    #0  0x00007ffff3a4f91d in poll () from /usr/lib/libc.so.6
    #1  0x00007fffe816cc91 in ?? () from /usr/lib/libpulse.so.0
    #2  0x00007fffe815e4bc in pa_mainloop_poll () from /usr/lib/libpulse.so.0
    #3  0x00007fffe815eb2e in pa_mainloop_iterate () from /usr/lib/libpulse.so.0
    #4  0x00007fffe815ebe0 in pa_mainloop_run () from /usr/lib/libpulse.so.0
    #5  0x00007fffe816cc43 in ?? () from /usr/lib/libpulse.so.0
    #6  0x00007fffda3cf4a8 in ?? () from /usr/lib/pulseaudio/libpulsecommon-4.0.so
    #7  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    #8  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    
    Thread 9 (Thread 0x7fffdaffd700 (LWP 9946)):
    #0  0x00007ffff79343e8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
    #1  0x00007ffff4ddfefc in boost::condition_variable::do_wait_until(boost::unique_lock<boost::mutex>&, timespec const&) () from /usr/lib/libboost_thread.so.1.55.0
    #2  0x00007ffff4ddc946 in boost::this_thread::hiden::sleep_until(timespec const&) () from /usr/lib/libboost_thread.so.1.55.0
    #3  0x0000000000a1b4d3 in sleep (abs_time=...) at /usr/include/boost/thread/pthread/thread_data.hpp:249
    #4  sleep<boost::date_time::subsecond_duration<boost::posix_time::time_duration, 1000l> > (rel_time=...) at /usr/include/boost/thread/pthread/thread_data.hpp:255
    #5  CSound::StartThread (this=0x1785550, maxSounds=<optimized out>) at /home/johanr/my_projects/spring/rts/System/Sound/Sound.cpp:382
    #6  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    #7  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    #8  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    
    Thread 8 (Thread 0x7fffdb7fe700 (LWP 9945)):
    #0  0x00007ffff79343e8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
    #1  0x00000000009934c0 in do_wait_until (timeout=..., m=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable.hpp:108
    #2  wait_until (tp=..., lk=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:253
    #3  wait_for<long, boost::ratio<1l, 1000000000l> > (d=..., lock=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:210
    #4  ThreadPool::WorkerLoop (id=<optimized out>) at /home/johanr/my_projects/spring/rts/System/ThreadPool.cpp:166
    #5  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    #6  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    #7  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    
    Thread 7 (Thread 0x7fffdbfff700 (LWP 9944)):
    #0  0x00007ffff79343e8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
    #1  0x00000000009934c0 in do_wait_until (timeout=..., m=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable.hpp:108
    #2  wait_until (tp=..., lk=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:253
    #3  wait_for<long, boost::ratio<1l, 1000000000l> > (d=..., lock=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:210
    #4  ThreadPool::WorkerLoop (id=<optimized out>) at /home/johanr/my_projects/spring/rts/System/ThreadPool.cpp:166
    #5  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    #6  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    #7  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    
    Thread 6 (Thread 0x7fffe8b86700 (LWP 9943)):
    #0  0x00007ffff79343e8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
    #1  0x00000000009934c0 in do_wait_until (timeout=..., m=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable.hpp:108
    #2  wait_until (tp=..., lk=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:253
    #3  wait_for<long, boost::ratio<1l, 1000000000l> > (d=..., lock=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:210
    #4  ThreadPool::WorkerLoop (id=<optimized out>) at /home/johanr/my_projects/spring/rts/System/ThreadPool.cpp:166
    #5  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    #6  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    #7  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    
    Thread 5 (Thread 0x7fffe9387700 (LWP 9942)):
    #0  0x00007ffff79343e8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
    #1  0x00000000009934c0 in do_wait_until (timeout=..., m=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable.hpp:108
    #2  wait_until (tp=..., lk=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:253
    #3  wait_for<long, boost::ratio<1l, 1000000000l> > (d=..., lock=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:210
    #4  ThreadPool::WorkerLoop (id=<optimized out>) at /home/johanr/my_projects/spring/rts/System/ThreadPool.cpp:166
    #5  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    #6  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    #7  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    
    Thread 4 (Thread 0x7fffe9b88700 (LWP 9941)):
    #0  0x00007ffff79343e8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
    #1  0x00000000009934c0 in do_wait_until (timeout=..., m=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable.hpp:108
    #2  wait_until (tp=..., lk=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:253
    #3  wait_for<long, boost::ratio<1l, 1000000000l> > (d=..., lock=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:210
    #4  ThreadPool::WorkerLoop (id=<optimized out>) at /home/johanr/my_projects/spring/rts/System/ThreadPool.cpp:166
    #5  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    #6  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    #7  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    
    Thread 3 (Thread 0x7fffea389700 (LWP 9940)):
    #0  0x00007ffff79343e8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
    #1  0x00000000009934c0 in do_wait_until (timeout=..., m=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable.hpp:108
    #2  wait_until (tp=..., lk=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:253
    #3  wait_for<long, boost::ratio<1l, 1000000000l> > (d=..., lock=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:210
    #4  ThreadPool::WorkerLoop (id=<optimized out>) at /home/johanr/my_projects/spring/rts/System/ThreadPool.cpp:166
    #5  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    #6  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    #7  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    
    Thread 2 (Thread 0x7fffeab8a700 (LWP 9939)):
    #0  0x00007ffff79343e8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
    #1  0x00000000009934c0 in do_wait_until (timeout=..., m=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable.hpp:108
    #2  wait_until (tp=..., lk=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:253
    #3  wait_for<long, boost::ratio<1l, 1000000000l> > (d=..., lock=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:210
    #4  ThreadPool::WorkerLoop (id=<optimized out>) at /home/johanr/my_projects/spring/rts/System/ThreadPool.cpp:166
    #5  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    #6  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    #7  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    
    Thread 1 (Thread 0x7ffff7fb07c0 (LWP 9938)):
    #0  CUnitDrawer::SetBasicTeamColour (team=<optimized out>, alpha=1) at /home/johanr/my_projects/spring/rts/Rendering/UnitDrawer.cpp:1277
    #1  0x000000000076710a in CProjectileDrawer::DrawProjectileModel (this=this@entry=0x7fff979796d0, p=0x31937c20, shadowPass=shadowPass@entry=false)
        at /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:755
    #2  0x00000000007689b3 in CProjectileDrawer::DrawProjectile (this=this@entry=0x7fff979796d0, pro=0x31937c20, drawReflection=drawReflection@entry=false, 
        drawRefraction=drawRefraction@entry=false) at /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:468
    #3  0x0000000000768b72 in CProjectileDrawer::DrawProjectilesSet (this=this@entry=0x7fff979796d0, 
        projectiles=Python Exception <type 'exceptions.IndexError'> list index out of range: 
    std::set with 1 elements, drawReflection=drawReflection@entry=false, drawRefraction=drawRefraction@entry=false)
        at /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:430
    #4  0x0000000000768bf2 in CProjectileDrawer::DrawProjectiles (this=this@entry=0x7fff979796d0, modelType=modelType@entry=1, numFlyingPieces=numFlyingPieces@entry=76287, 
        drawnPieces=drawnPieces@entry=0x7fffffffe0cc, drawReflection=drawReflection@entry=false, drawRefraction=drawRefraction@entry=false)
        at /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:421
    #5  0x0000000000768d30 in CProjectileDrawer::Draw (this=0x7fff979796d0, drawReflection=drawReflection@entry=false, drawRefraction=drawRefraction@entry=false)
        at /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:648
    #6  0x00000000007a2ed0 in CWorldDrawer::Draw (this=<optimized out>) at /home/johanr/my_projects/spring/rts/Rendering/WorldDrawer.cpp:206
    #7  0x00000000004cc354 in CGame::Draw (this=0x177bc30) at /home/johanr/my_projects/spring/rts/Game/Game.cpp:1274
    #8  0x000000000097c07c in SpringApp::Update (this=this@entry=0x7fffffffe580) at /home/johanr/my_projects/spring/rts/System/SpringApp.cpp:966
    #9  0x0000000000980efa in SpringApp::Run (this=this@entry=0x7fffffffe580) at /home/johanr/my_projects/spring/rts/System/SpringApp.cpp:1034
    #10 0x000000000095c065 in Run (argc=argc@entry=2, argv=argv@entry=0x7fffffffe838) at /home/johanr/my_projects/spring/rts/System/Main.cpp:65
    #11 0x000000000048284c in main (argc=2, argv=0x7fffffffe838) at /home/johanr/my_projects/spring/rts/System/Main.cpp:125
    
    txt file icon bt_threads.txt (11,720 bytes) 2013-12-26 09:51 +
  • txt file icon bt_threads_full.txt (23,362 bytes) 2013-12-26 09:51 -
    Thread 13 (Thread 0x7fffd899d700 (LWP 9950)):
    #0  0x00007ffff3a415a7 in sched_yield () from /usr/lib/libc.so.6
    No symbol table info available.
    #1  0x000000000095ff27 in __gthread_yield () at /usr/include/c++/4.8.2/x86_64-unknown-linux-gnu/bits/gthr-default.h:692
    No locals.
    #2  yield () at /usr/include/c++/4.8.2/thread:259
    No locals.
    #3  thread_yield () at /home/johanr/my_projects/spring/rts/System/Misc/SpringTime.cpp:198
    No locals.
    #4  spring_time::sleep (this=this@entry=0x7fffd899cce0) at /home/johanr/my_projects/spring/rts/System/Misc/SpringTime.cpp:216
            s = {static binder = {class_ = 0x11d1d50, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x10ed8d0 <spring_time::memberRegistrator>, 
                name = 0xd28583 "spring_time", size = 8, alignment = 8, hasVTable = false, constructor = 0x95fd60 <spring_time::_ConstructInstance(void*)>, 
                destructor = 0x95fd70 <spring_time::_DestructInstance(void*)>, nextBinder = 0x10ed780 <CRectangleOptimizer::binder>}, 
              static memberRegistrator = 0x10ed958 <spring_timemreg>, static hasVTable = false, x = 1388047184847251408, static xs = 1388045857043791668}
            t0 = <optimized out>
            t1 = <optimized out>
            dt = <optimized out>
    #5  0x00000000005a68a1 in CGameServer::UpdateLoop (this=0x1775080) at /home/johanr/my_projects/spring/rts/Net/GameServer.cpp:2498
            scoped_lock = <optimized out>
    #6  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    No symbol table info available.
    #7  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #8  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    No symbol table info available.
    
    Thread 12 (Thread 0x7fffe813a700 (LWP 9949)):
    #0  0x00007ffff793712d in nanosleep () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #1  0x00007ffff456103a in ?? () from /usr/lib/libopenal.so.1
    No symbol table info available.
    #2  0x00007ffff456c4c3 in ?? () from /usr/lib/libopenal.so.1
    No symbol table info available.
    #3  0x00007ffff456082a in ?? () from /usr/lib/libopenal.so.1
    No symbol table info available.
    #4  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #5  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    No symbol table info available.
    
    Thread 11 (Thread 0x7fffd919e700 (LWP 9948)):
    #0  0x00007ffff3a4f91d in poll () from /usr/lib/libc.so.6
    No symbol table info available.
    #1  0x00007fffe816cc91 in ?? () from /usr/lib/libpulse.so.0
    No symbol table info available.
    #2  0x00007fffe815e4bc in pa_mainloop_poll () from /usr/lib/libpulse.so.0
    No symbol table info available.
    #3  0x00007fffe815eb2e in pa_mainloop_iterate () from /usr/lib/libpulse.so.0
    No symbol table info available.
    #4  0x00007fffe815ebe0 in pa_mainloop_run () from /usr/lib/libpulse.so.0
    No symbol table info available.
    #5  0x00007fffe816cc43 in ?? () from /usr/lib/libpulse.so.0
    No symbol table info available.
    #6  0x00007fffda3cf4a8 in ?? () from /usr/lib/pulseaudio/libpulsecommon-4.0.so
    No symbol table info available.
    #7  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #8  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    No symbol table info available.
    
    Thread 9 (Thread 0x7fffdaffd700 (LWP 9946)):
    #0  0x00007ffff79343e8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #1  0x00007ffff4ddfefc in boost::condition_variable::do_wait_until(boost::unique_lock<boost::mutex>&, timespec const&) () from /usr/lib/libboost_thread.so.1.55.0
    No symbol table info available.
    #2  0x00007ffff4ddc946 in boost::this_thread::hiden::sleep_until(timespec const&) () from /usr/lib/libboost_thread.so.1.55.0
    No symbol table info available.
    #3  0x0000000000a1b4d3 in sleep (abs_time=...) at /usr/include/boost/thread/pthread/thread_data.hpp:249
    No locals.
    #4  sleep<boost::date_time::subsecond_duration<boost::posix_time::time_duration, 1000l> > (rel_time=...) at /usr/include/boost/thread/pthread/thread_data.hpp:255
    No locals.
    #5  CSound::StartThread (this=0x1785550, maxSounds=<optimized out>) at /home/johanr/my_projects/spring/rts/System/Sound/Sound.cpp:382
            curcontext = <optimized out>
            curdevice = <optimized out>
    #6  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    No symbol table info available.
    #7  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #8  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    No symbol table info available.
    
    Thread 8 (Thread 0x7fffdb7fe700 (LWP 9945)):
    #0  0x00007ffff79343e8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #1  0x00000000009934c0 in do_wait_until (timeout=..., m=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable.hpp:108
            check_for_interruption = {thread_info = 0x16338c0, m = 0x10efde0 <newTasks>, set = true}
            guard = {m = 0x7fffdb7fdcd0}
            cond_res = <optimized out>
    #2  wait_until (tp=..., lk=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:253
            ts = {tv_sec = 1388047184, tv_nsec = 847583107}
    #3  wait_for<long, boost::ratio<1l, 1000000000l> > (d=..., lock=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:210
            s_now = {d_ = {rep_ = 1388047184847583007}}
    #4  ThreadPool::WorkerLoop (id=<optimized out>) at /home/johanr/my_projects/spring/rts/System/ThreadPool.cpp:166
            lk = {m = 0x10efe40 <taskMutex>, is_locked = false}
            m = {m = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 0, __spins = 0, __elision = 0, __list = {__prev = 0x0, __next = 0x0}}, 
                __size = '\000' <repeats 39 times>, __align = 0}}
            lk2 = {m = 0x7fffdb7fdd30, is_locked = false}
    #5  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    No symbol table info available.
    #6  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #7  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    No symbol table info available.
    
    Thread 7 (Thread 0x7fffdbfff700 (LWP 9944)):
    #0  0x00007ffff79343e8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #1  0x00000000009934c0 in do_wait_until (timeout=..., m=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable.hpp:108
            check_for_interruption = {thread_info = 0x1633550, m = 0x10efde0 <newTasks>, set = true}
            guard = {m = 0x7fffdbffecd0}
            cond_res = <optimized out>
    #2  wait_until (tp=..., lk=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:253
            ts = {tv_sec = 1388047184, tv_nsec = 847587495}
    #3  wait_for<long, boost::ratio<1l, 1000000000l> > (d=..., lock=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:210
            s_now = {d_ = {rep_ = 1388047184847587395}}
    #4  ThreadPool::WorkerLoop (id=<optimized out>) at /home/johanr/my_projects/spring/rts/System/ThreadPool.cpp:166
            lk = {m = 0x10efe40 <taskMutex>, is_locked = false}
            m = {m = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 0, __spins = 0, __elision = 0, __list = {__prev = 0x0, __next = 0x0}}, 
                __size = '\000' <repeats 39 times>, __align = 0}}
            lk2 = {m = 0x7fffdbffed30, is_locked = false}
    #5  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    No symbol table info available.
    #6  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #7  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    No symbol table info available.
    
    Thread 6 (Thread 0x7fffe8b86700 (LWP 9943)):
    #0  0x00007ffff79343e8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #1  0x00000000009934c0 in do_wait_until (timeout=..., m=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable.hpp:108
            check_for_interruption = {thread_info = 0x16331e0, m = 0x10efde0 <newTasks>, set = true}
            guard = {m = 0x7fffe8b85cd0}
            cond_res = <optimized out>
    #2  wait_until (tp=..., lk=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:253
            ts = {tv_sec = 1388047184, tv_nsec = 847592461}
    #3  wait_for<long, boost::ratio<1l, 1000000000l> > (d=..., lock=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:210
            s_now = {d_ = {rep_ = 1388047184847592361}}
    #4  ThreadPool::WorkerLoop (id=<optimized out>) at /home/johanr/my_projects/spring/rts/System/ThreadPool.cpp:166
            lk = {m = 0x10efe40 <taskMutex>, is_locked = false}
            m = {m = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 0, __spins = 0, __elision = 0, __list = {__prev = 0x0, __next = 0x0}}, 
                __size = '\000' <repeats 39 times>, __align = 0}}
            lk2 = {m = 0x7fffe8b85d30, is_locked = false}
    #5  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    No symbol table info available.
    #6  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #7  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    No symbol table info available.
    
    Thread 5 (Thread 0x7fffe9387700 (LWP 9942)):
    #0  0x00007ffff79343e8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #1  0x00000000009934c0 in do_wait_until (timeout=..., m=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable.hpp:108
            check_for_interruption = {thread_info = 0x1632e70, m = 0x10efde0 <newTasks>, set = true}
            guard = {m = 0x7fffe9386cd0}
            cond_res = <optimized out>
    #2  wait_until (tp=..., lk=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:253
            ts = {tv_sec = 1388047184, tv_nsec = 847582798}
    #3  wait_for<long, boost::ratio<1l, 1000000000l> > (d=..., lock=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:210
            s_now = {d_ = {rep_ = 1388047184847582698}}
    #4  ThreadPool::WorkerLoop (id=<optimized out>) at /home/johanr/my_projects/spring/rts/System/ThreadPool.cpp:166
            lk = {m = 0x10efe40 <taskMutex>, is_locked = false}
            m = {m = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 0, __spins = 0, __elision = 0, __list = {__prev = 0x0, __next = 0x0}}, 
                __size = '\000' <repeats 39 times>, __align = 0}}
            lk2 = {m = 0x7fffe9386d30, is_locked = false}
    #5  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    No symbol table info available.
    #6  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #7  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    No symbol table info available.
    
    Thread 4 (Thread 0x7fffe9b88700 (LWP 9941)):
    #0  0x00007ffff79343e8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #1  0x00000000009934c0 in do_wait_until (timeout=..., m=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable.hpp:108
            check_for_interruption = {thread_info = 0x1632b00, m = 0x10efde0 <newTasks>, set = true}
            guard = {m = 0x7fffe9b87cd0}
            cond_res = <optimized out>
    #2  wait_until (tp=..., lk=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:253
            ts = {tv_sec = 1388047184, tv_nsec = 847587631}
    #3  wait_for<long, boost::ratio<1l, 1000000000l> > (d=..., lock=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:210
            s_now = {d_ = {rep_ = 1388047184847587531}}
    #4  ThreadPool::WorkerLoop (id=<optimized out>) at /home/johanr/my_projects/spring/rts/System/ThreadPool.cpp:166
            lk = {m = 0x10efe40 <taskMutex>, is_locked = false}
            m = {m = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 0, __spins = 0, __elision = 0, __list = {__prev = 0x0, __next = 0x0}}, 
                __size = '\000' <repeats 39 times>, __align = 0}}
            lk2 = {m = 0x7fffe9b87d30, is_locked = false}
    #5  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    No symbol table info available.
    #6  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #7  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    No symbol table info available.
    
    Thread 3 (Thread 0x7fffea389700 (LWP 9940)):
    #0  0x00007ffff79343e8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #1  0x00000000009934c0 in do_wait_until (timeout=..., m=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable.hpp:108
            check_for_interruption = {thread_info = 0x1632420, m = 0x10efde0 <newTasks>, set = true}
            guard = {m = 0x7fffea388cd0}
            cond_res = <optimized out>
    #2  wait_until (tp=..., lk=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:253
            ts = {tv_sec = 1388047184, tv_nsec = 847601398}
    #3  wait_for<long, boost::ratio<1l, 1000000000l> > (d=..., lock=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:210
            s_now = {d_ = {rep_ = 1388047184847601298}}
    #4  ThreadPool::WorkerLoop (id=<optimized out>) at /home/johanr/my_projects/spring/rts/System/ThreadPool.cpp:166
            lk = {m = 0x10efe40 <taskMutex>, is_locked = false}
            m = {m = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 0, __spins = 0, __elision = 0, __list = {__prev = 0x0, __next = 0x0}}, 
                __size = '\000' <repeats 39 times>, __align = 0}}
            lk2 = {m = 0x7fffea388d30, is_locked = false}
    #5  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    No symbol table info available.
    #6  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #7  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    No symbol table info available.
    
    Thread 2 (Thread 0x7fffeab8a700 (LWP 9939)):
    #0  0x00007ffff79343e8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #1  0x00000000009934c0 in do_wait_until (timeout=..., m=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable.hpp:108
            check_for_interruption = {thread_info = 0x16320b0, m = 0x10efde0 <newTasks>, set = true}
            guard = {m = 0x7fffeab89cd0}
            cond_res = <optimized out>
    #2  wait_until (tp=..., lk=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:253
            ts = {tv_sec = 1388047184, tv_nsec = 847601017}
    #3  wait_for<long, boost::ratio<1l, 1000000000l> > (d=..., lock=..., this=0x10efde0 <newTasks>) at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:210
            s_now = {d_ = {rep_ = 1388047184847600917}}
    #4  ThreadPool::WorkerLoop (id=<optimized out>) at /home/johanr/my_projects/spring/rts/System/ThreadPool.cpp:166
            lk = {m = 0x10efe40 <taskMutex>, is_locked = false}
            m = {m = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 0, __spins = 0, __elision = 0, __list = {__prev = 0x0, __next = 0x0}}, 
                __size = '\000' <repeats 39 times>, __align = 0}}
            lk2 = {m = 0x7fffeab89d30, is_locked = false}
    #5  0x00007ffff4ddbcfa in ?? () from /usr/lib/libboost_thread.so.1.55.0
    No symbol table info available.
    #6  0x00007ffff79300a2 in start_thread () from /usr/lib/libpthread.so.0
    No symbol table info available.
    #7  0x00007ffff3a583dd in clone () from /usr/lib/libc.so.6
    No symbol table info available.
    
    Thread 1 (Thread 0x7ffff7fb07c0 (LWP 9938)):
    #0  CUnitDrawer::SetBasicTeamColour (team=<optimized out>, alpha=1) at /home/johanr/my_projects/spring/rts/Rendering/UnitDrawer.cpp:1277
            col = 0xad <Address 0xad out of bounds>
            texConstant = {0, 0, -2.51819055e+31, 4.59163468e-41}
            matConstant = {9.71304814e-09, 0, -5.40901701e+31, 4.59163468e-41}
    #1  0x000000000076710a in CProjectileDrawer::DrawProjectileModel (this=this@entry=0x7fff979796d0, p=0x31937c20, shadowPass=shadowPass@entry=false)
        at /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:755
            wp = 0x31937c20
    #2  0x00000000007689b3 in CProjectileDrawer::DrawProjectile (this=this@entry=0x7fff979796d0, pro=0x31937c20, drawReflection=drawReflection@entry=false, 
        drawRefraction=drawRefraction@entry=false) at /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:468
            owner = <optimized out>
            visible = true
    #3  0x0000000000768b72 in CProjectileDrawer::DrawProjectilesSet (this=this@entry=0x7fff979796d0, 
        projectiles=Python Exception <type 'exceptions.IndexError'> list index out of range: 
    std::set with 1 elements, drawReflection=drawReflection@entry=false, drawRefraction=drawRefraction@entry=false)
        at /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:430
            setIt = 
    #4  0x0000000000768bf2 in CProjectileDrawer::DrawProjectiles (this=this@entry=0x7fff979796d0, modelType=modelType@entry=1, numFlyingPieces=numFlyingPieces@entry=76287, 
        drawnPieces=drawnPieces@entry=0x7fffffffe0cc, drawReflection=drawReflection@entry=false, drawRefraction=drawRefraction@entry=false)
        at /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:421
            binIt = {first = 76, second = std::set with 1 elements = {[0] = }}
    #5  0x0000000000768d30 in CProjectileDrawer::Draw (this=0x7fff979796d0, drawReflection=drawReflection@entry=false, drawRefraction=drawRefraction@entry=false)
        at /home/johanr/my_projects/spring/rts/Rendering/ProjectileDrawer.cpp:648
            modelType = 1
            numFlyingPieces = 76287
            drawnPieces = 0
    #6  0x00000000007a2ed0 in CWorldDrawer::Draw (this=<optimized out>) at /home/johanr/my_projects/spring/rts/Rendering/WorldDrawer.cpp:206
            myScopedTimerFromMakro = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 2429, starttime = {static binder = {class_ = 0x11d1d50, 
                    base = 0x0, flags = creg::CF_None, memberRegistrator = 0x10ed8d0 <spring_time::memberRegistrator>, name = 0xd28583 "spring_time", size = 8, alignment = 8, 
                    hasVTable = false, constructor = 0x95fd60 <spring_time::_ConstructInstance(void*)>, destructor = 0x95fd70 <spring_time::_DestructInstance(void*)>, 
                    nextBinder = 0x10ed780 <CRectangleOptimizer::binder>}, static memberRegistrator = 0x10ed958 <spring_timemreg>, static hasVTable = false, 
                  x = 1388047184842272378, static xs = 1388045857043791668}, nameIterator = {first = 2429, second = "WorldDrawer::Projectiles"}}, autoShowGraph = false, it = {
                first = 2429, second = 1}}
            myScopedTimerFromMakro = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 1783, starttime = {static binder = {class_ = 0x11d1d50, 
                    base = 0x0, flags = creg::CF_None, memberRegistrator = 0x10ed8d0 <spring_time::memberRegistrator>, name = 0xd28583 "spring_time", size = 8, alignment = 8, 
                    hasVTable = false, constructor = 0x95fd60 <spring_time::_ConstructInstance(void*)>, destructor = 0x95fd70 <spring_time::_DestructInstance(void*)>, 
                    nextBinder = 0x10ed780 <CRectangleOptimizer::binder>}, static memberRegistrator = 0x10ed958 <spring_timemreg>, static hasVTable = false, 
                  x = 1388047184839778013, static xs = 1388045857043791668}, nameIterator = {first = 1783, second = "WorldDrawer::Total"}}, autoShowGraph = false, it = {
                first = 1783, second = 1}}
            gd = 0x7fff8994d9c0
            plane_below = {0, -1, 0, 0}
            plane_above = {0, 1, 0, 0}
    #7  0x00000000004cc354 in CGame::Draw (this=0x177bc30) at /home/johanr/my_projects/spring/rts/Game/Game.cpp:1274
            currentTimePreUpdate = <optimized out>
            doDrawWorld = true
            currentTimePreDraw = {static binder = {class_ = 0x11d1d50, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x10ed8d0 <spring_time::memberRegistrator>, 
                name = 0xd28583 "spring_time", size = 8, alignment = 8, hasVTable = false, constructor = 0x95fd60 <spring_time::_ConstructInstance(void*)>, 
                destructor = 0x95fd70 <spring_time::_DestructInstance(void*)>, nextBinder = 0x10ed780 <CRectangleOptimizer::binder>}, 
              static memberRegistrator = 0x10ed958 <spring_timemreg>, static hasVTable = false, x = 1388047184836262117, static xs = 1388045857043791668}
            myScopedTimerFromMakro = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 1388047184, starttime = {static binder = {
                    class_ = 0x11d1d50, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x10ed8d0 <spring_time::memberRegistrator>, name = 0xd28583 "spring_time", 
                    size = 8, alignment = 8, hasVTable = false, constructor = 0x95fd60 <spring_time::_ConstructInstance(void*)>, 
                    destructor = 0x95fd70 <spring_time::_DestructInstance(void*)>, nextBinder = 0x10ed780 <CRectangleOptimizer::binder>}, 
                  static memberRegistrator = 0x10ed958 <spring_timemreg>, static hasVTable = false, x = 811742982, static xs = 1388045857043791668}, 
                nameIterator = <error reading variable>
            currentTimePostDraw = <optimized out>
    #8  0x000000000097c07c in SpringApp::Update (this=this@entry=0x7fffffffe580) at /home/johanr/my_projects/spring/rts/System/SpringApp.cpp:966
            cputimer = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 1972, starttime = {static binder = {class_ = 0x11d1d50, base = 0x0, 
                    flags = creg::CF_None, memberRegistrator = 0x10ed8d0 <spring_time::memberRegistrator>, name = 0xd28583 "spring_time", size = 8, alignment = 8, 
                    hasVTable = false, constructor = 0x95fd60 <spring_time::_ConstructInstance(void*)>, destructor = 0x95fd70 <spring_time::_DestructInstance(void*)>, 
                    nextBinder = 0x10ed780 <CRectangleOptimizer::binder>}, static memberRegistrator = 0x10ed958 <spring_timemreg>, static hasVTable = false, 
                  x = 1388047184811742982, static xs = 1388045857043791668}, nameIterator = {first = 1972, second = "GameController::Draw"}}, autoShowGraph = false, it = {
                first = 1972, second = 1}}
            ret = <optimized out>
    #9  0x0000000000980efa in SpringApp::Run (this=this@entry=0x7fffffffe580) at /home/johanr/my_projects/spring/rts/System/SpringApp.cpp:1034
            __FUNCTION__ = "Run"
    #10 0x000000000095c065 in Run (argc=argc@entry=2, argv=argv@entry=0x7fffffffe838) at /home/johanr/my_projects/spring/rts/System/Main.cpp:65
            app = {cmdline = 0x11bce80}
            ret = -1
            err = <optimized out>
            __FUNCTION__ = "Run"
    #11 0x000000000048284c in main (argc=2, argv=0x7fffffffe838) at /home/johanr/my_projects/spring/rts/System/Main.cpp:125
    No locals.
    
    txt file icon bt_threads_full.txt (23,362 bytes) 2013-12-26 09:51 +
  • 7z file icon 20131223_154251_Comet Catcher Redux_95.0.1-208-g8871215 develop.sdf.7z (1,510,255 bytes) 2013-12-26 11:08

-Relationships
+Relationships

-Notes

~0012485

Kloot (developer)

these traces are half-corrupt and all *Drawer classes are cleaned up before any team instances are so I don't see the relation...

~0012486

silentwings (reporter)

Last edited: 2013-12-25 13:45

View 2 revisions

If anyone wants to know how to set up gdb on win and the attach it to a crashed isntance of spring to get a proper stacktrace of the crash (as in 0004053), pm me in the lobby - [Fx]Bluestone.

~0012487

abma (administrator)

does watching the replay lead to the crash?

google frogs crash translated:

spring.exe 0x007024F1 rts/Rendering/UnitDrawer.cpp:1277
spring.exe 0x007087FB rts/Rendering/UnitDrawerState.cpp:204
spring.exe 0x006D6F56 rts/Rendering/ProjectileDrawer.cpp:470
spring.exe 0x006D70AA rts/Rendering/ProjectileDrawer.cpp:430
spring.exe 0x006D7119 rts/Rendering/ProjectileDrawer.cpp:421
spring.exe 0x006D726F rts/Rendering/ProjectileDrawer.cpp:649
spring.exe 0x0070F3C3 rts/Rendering/WorldDrawer.cpp:206
spring.exe 0x0042B7E4 rts/Game/Game.cpp:1288
spring.exe 0x0088F8E3 rts/System/SpringApp.cpp:968
spring.exe 0x008960E4 rts/System/SpringApp.cpp:1034
spring.exe 0x00872196 rts/System/Main.cpp:65
spring.exe 0x00872FAC rts/System/Main.cpp:125
spring.exe 0x008731CD rts/System/Main.cpp:134
spring.exe 0x00401402 crtexe.c:0
C:\Windows\syswow64\kernel32.dll 0x75D1336A ??:0
C:\Windows\SysWOW64\ntdll.dll 0x77EA9F72 ??:0
C:\Windows\SysWOW64\ntdll.dll 0x77EA9F45 ??:0

~0012488

abma (administrator)

can you reproduce the crash easily?

by something like, /give all, ctrl+a, ctrl+d click exit ?

~0012490

cleanrock (reporter)

Last edited: 2013-12-26 10:01

View 3 revisions

Watching demo crashed the same way, attaching demo and bt logs.

Edit: demo not attached, it was too big
Edit: teams look ok:
(gdb) p teamHandler->teams
$2 = std::vector of length 19, capacity 19 = {0x18d83f0, 0x18d8590, 0x18d8730, 0x18d88d0, 0x18d8a70, 0x18d8c10, 0x18d8db0, 0x1799060, 0x1799200, 0x17993a0, 0x1799540,
  0x17996e0, 0x1799880, 0x1799a20, 0x1799bc0, 0x1799d60, 0x1799f00, 0x179a0a0, 0x179a240}

~0012491

cleanrock (reporter)

Last edited: 2013-12-26 10:08

View 4 revisions

teamID is crap in #1 :
(gdb) p wp
$5 = (const CWeaponProjectile *) 0x31937c20
(gdb) p wp->teamID
$6 = 4294967295

~0012492

cleanrock (reporter)

Last edited: 2013-12-26 11:13

View 2 revisions

Contact me in lobby if you need some specific info from gdb.

~0012493

abma (administrator)

zip & attach then?!

~0012494

Kloot (developer)

4294967295 is just the unsigned representation of -1, not garbage

~0012495

cleanrock (reporter)

perhaps not garbage but i guess you see that -1 is not very good in SetBasicTeamColour

~0012496

cleanrock (reporter)

I see that Projectile::teamID is not guaranteed to be be set, perhaps both the inits were missed:
void CProjectile::Init(CUnit* owner, const float3& offset)
CWeaponProjectile::CWeaponProjectile(const ProjectileParams& params)
        // the else-case (default) is handled in CProjectile::Init

The projectile seem to be a nuke:
(gdb) p wp->weaponDef->name
$4 = "nuclear_missile"
(gdb) p wp->weaponDef->metalcost
$5 = 1000

~0012497

cleanrock (reporter)

I question if this should be a 96 blocker.

~0012498

abma (administrator)

Last edited: 2013-12-26 16:30

View 2 revisions

reproduceable crash imo is a blocker

~0012499

Google_Frog (reporter)

"nuclear_missile" is the name of a weapon which is not used as a weapon by any unit. It is only an entry in explodeAs and selfDestructAs for amgeo and armorco.
+Notes

-Issue History
Date Modified Username Field Change
2013-12-25 10:03 cleanrock New Issue
2013-12-25 10:03 cleanrock File Added: infolog_cr_20131223.txt
2013-12-25 10:04 cleanrock File Added: access_violation_208_gfrog.txt
2013-12-25 13:11 Kloot Note Added: 0012485
2013-12-25 13:45 silentwings Note Added: 0012486
2013-12-25 13:45 silentwings Note Edited: 0012486 View Revisions
2013-12-25 14:33 abma Note Added: 0012487
2013-12-25 14:38 abma Target Version => 96.0
2013-12-25 18:29 abma Note Added: 0012488
2013-12-26 09:50 cleanrock Note Added: 0012490
2013-12-26 09:51 cleanrock File Added: bt_full.txt
2013-12-26 09:51 cleanrock File Added: bt_threads.txt
2013-12-26 09:51 cleanrock File Added: bt_threads_full.txt
2013-12-26 09:52 cleanrock Note Edited: 0012490 View Revisions
2013-12-26 10:01 cleanrock Note Edited: 0012490 View Revisions
2013-12-26 10:07 cleanrock Note Added: 0012491
2013-12-26 10:08 cleanrock Note Edited: 0012491 View Revisions
2013-12-26 10:08 cleanrock Note Edited: 0012491 View Revisions
2013-12-26 10:08 cleanrock Note Edited: 0012491 View Revisions
2013-12-26 10:21 cleanrock Note Added: 0012492
2013-12-26 10:32 abma Note Added: 0012493
2013-12-26 11:08 cleanrock File Added: 20131223_154251_Comet Catcher Redux_95.0.1-208-g8871215 develop.sdf.7z
2013-12-26 11:13 cleanrock Note Edited: 0012492 View Revisions
2013-12-26 11:59 Kloot Note Added: 0012494
2013-12-26 14:08 cleanrock Note Added: 0012495
2013-12-26 14:48 cleanrock Note Added: 0012496
2013-12-26 15:00 cleanrock Note Added: 0012497
2013-12-26 16:24 abma Note Added: 0012498
2013-12-26 16:30 abma Note Edited: 0012498 View Revisions
2013-12-26 16:54 Google_Frog Note Added: 0012499
2013-12-26 18:44 Kloot Assigned To => Kloot
2013-12-26 18:44 Kloot Status new => assigned
2013-12-26 23:19 Kloot Changeset attached => spring release bdcebb27
2013-12-26 23:19 Kloot Status assigned => resolved
2013-12-26 23:19 Kloot Resolution open => fixed
+Issue History