Bug 578487 - Refresh job gets stuck and cannot proceed ever
Prevent endless refresh operations if refresh of a current resource adds
current resource again at the begin of the queue to refresh.
The bug was caused by undocumented hack in UnifiedTree.isValidLevel()
that allowed values over 1000 (and only such values) to be valid.
For invalid depth values, childLevelValid will be set to false, so
addNodeChildrenToQueue() will not do anything and so the current
resource node refresh will not happen, so next members() call will add
again the resource to the refresh job queue IF the deep value in
RefreshJob.runInWorkspace() overflows.
Change-Id: Ib131e82a7fad5c35bcf8d06e110d4b13a32a4dae
Signed-off-by: Andrey Loskutov <loskutov@gmx.de>
Reviewed-on: https://git.eclipse.org/r/c/platform/eclipse.platform.resources/+/190213
Tested-by: Platform Bot <platform-bot@eclipse.org>
2 files changed