| Anonymous | Login | 2025-10-24 02:24 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 | |||||||||
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 - 2025 MantisBT Team |