the signature assistant always asserts now when triggered in a debug build due the read locks held in the AbstractNavigationWidget::* API, most notably AbstractNavigationWidget::anchorClicked. We potentially can simply remove those locks there, but then we'll have to test the other contexts and language plugins to see whether they assert then or not. Reproducible: Always Steps to Reproduce: trigger signature assistant Actual Results: assertion due to read lock being held when calling DUChain::self()->waitForUpdate Expected Results: no assertion
Never seen this. Does it still happen? What I see is lots of kdevelop(5828)/(kdevplatform.language) KDevelop::TopDUContextDynamicData::DUChainItemStorage::getItemForIndex: item index out of bounds: 2314 count: 385 That could also be the reason for why it doesn't work sometimes ...
Ok, I do see it after all, maybe I'm just blind. I'll find a way to fix it.
Git commit 00f21bae5ceed53e4f1b3860a394fccc7b0347c3 by Sven Brauch. Committed on 17/07/2016 at 11:15. Pushed by brauch into branch '5.0'. Remove DUChain lock in AbstractNavigationWidget::anchorClicked() I didn't asserts in other languages, but I also don't think any of them actually does anything custom wrt navigation-widget. M +0 -2 language/duchain/navigation/abstractnavigationwidget.cpp http://commits.kde.org/kdevplatform/00f21bae5ceed53e4f1b3860a394fccc7b0347c3