Delay final cleanup of DataRepositories until end of DUChain shutdown.

Authored by mwolff on Aug 9 2014, 5:29 PM.

Description

Delay final cleanup of DataRepositories until end of DUChain shutdown.

This is required, as otherwise non-disk-refcounted items might get
deleted but then later-on accessed again. This is a reason for
random crashes during shutdown, which only occur for complicated
DUChain structures. Only then would further cleanup happen after
the call to ItemRepo's finalCleanup, and DUContexts still lie
around in memory...

Thankfully we had a reproducible test case with the code completion
unit test in kdev-qmljs (master) which is fixed by this patch.
Logically, I'm also confident that this is the correct approach.

BUG: 264931

Details

Committed
mwolffAug 9 2014, 5:29 PM
Parents
R32:5064545c821a: Make "Parse All Project Sources" feature work.
Branches
Unknown
Tags
Unknown