Anonymous | Login | 2024-11-21 15:10 UTC |
My View | View Issues | Change Log | Roadmap |
View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
0000956 | VCMI | Mechanics - Adventure Map | public | 2012-05-15 15:25 | 2014-05-30 17:41 | ||||
Reporter | Ivan | ||||||||
Assigned To | Tow | ||||||||
Priority | normal | Severity | crash | Reproducibility | sometimes | ||||
Status | closed | Resolution | fixed | ||||||
Platform | x86_64 | OS | Ubuntu Linux | OS Version | 12.04 (precise) | ||||
Product Version | |||||||||
Target Version | Fixed in Version | ||||||||
Summary | 0000956: Sometimes VCMI hangs on visiting objects by hero | ||||||||
Description | Sometimes (~1 time per in-game month) on visiting adventure map object (so far had happened with water wheel, gold pile and creatures) game hangs: - Interface won't response - Music still playing - Closing client will only print message to console "Sent closing signal to the server" This is not reproducible after reloading game Uploaded logs and stacktrace from both client and server. | ||||||||
Tags | No tags attached. | ||||||||
Attached Files | vcmi-bug-visit-object.zip [^] (69,627 bytes) 2012-05-15 15:25 | ||||||||
Notes | |
(0002443) Ivan (developer) 2012-05-15 20:43 edited on: 2012-05-15 20:44 |
Got it once more. And I think I found source - deadlock, bit I still have no idea how to fix: Thread A (GuiHandler::run) stuck here: 3 0x00000000005a19b0 in vstd::unlock_guard<boost::recursive_mutex, vstd::detail::unlock_policy<boost::recursive_mutex> >::~unlock_guard ( this=0x7ff1ad731820, __in_chrg=<optimized out>) at /lib/UnlockGuard.h:72 4 0x0000000000776886 in CPlayerInterface::moveHero (this=0x7ff1a748e220, h= 0x7ff1a54e8920, path=...) at /client/CPlayerInterface.cpp:1254 Thread B (CClient::run) stuck here: 4 0x00007ff1bf4eacb7 in boost::unique_lock<boost::shared_mutex>::unique_lock (this=0x7ff1aa971c80, m_=...) at /usr/include/boost/thread/locks.hpp:290 5 0x00007ff1bf4d47e5 in CApplyOnGS<HeroVisit>::applyOnGS ( this=0x7ff1a5278520, gs=0x7ff1a5322ba0, pack=0x7ff1905859d0) at /home/ivan/src/vcmi/lib/CGameState.cpp:77 Any ideas how to fix? |
(0002508) Tow (developer) 2012-05-19 23:00 |
Fixed in r2698 by reordering locks. :/ Not very nice, it would be best if I had a lock that atomically locks two (heterogeneous) mutexes. Seems not effort-worthy for now. |
Issue History | |||
Date Modified | Username | Field | Change |
2012-05-15 15:25 | Ivan | New Issue | |
2012-05-15 15:25 | Ivan | File Added: vcmi-bug-visit-object.zip | |
2012-05-15 20:43 | Ivan | Note Added: 0002443 | |
2012-05-15 20:44 | Ivan | Note Edited: 0002443 | View Revisions |
2012-05-19 00:07 | Tow | Assigned To | => Tow |
2012-05-19 00:07 | Tow | Status | new => assigned |
2012-05-19 23:00 | Tow | Note Added: 0002508 | |
2012-05-19 23:01 | Tow | Status | assigned => resolved |
2012-05-19 23:01 | Tow | Resolution | open => fixed |
2014-05-30 17:41 | beegee | Status | resolved => closed |
Copyright © 2000 - 2024 MantisBT Team |