scala-ide/scala-ide — pull request #491 by huitseeker (2013-08-09 13:01:25+00:00)
Title: [Backport] Sync 'isDefined' in presentation compiler cache.

This fixes one race condition when hyperlinking between projects. Project
'client' depends on project 'base'. The sequence of events was:

- dependent project 'base' starts building
- the indexer for `client` kicks in and starts the PC. The PC is not
yet initialized. PC starts without `base` classfiles on its class path
- `base` finished building and triggers a reset of the PC for `client`,
that normally restarts with `base` classfiles on the class path
- reset is ignored (PC is still starting, and `isDefined` returns false)
- hyperlinking fails, because the target is not available on the class path