Community
Participate
Working Groups
1. Import org.eclipse.swt and its required plugins 2. Close org.eclipse.swt.win32 3. Query all types (Ctrl+Shift+T) 4. Search SWT in the list SWT is present. 5. Open SWT An error window appear.
Cannot reproduce. SWT isn't listed. Note: my workspace is a full source workspace.
Reproduced. Problems comes from the fact that when removing the package fragment root (from other projects), its index is flushed from memory, but indexing jobs related to this root JAR are not discarded. If creating a new workspace and immediately importing projects and closing one, the indexing is still processing the JAR and thus if closed before indexing is over, the index will end up in the cache and thus its types will be made available in spite of the JAR isn't accessible anymore. ==== Fix consists in 2 changes: - AddJarFileToIndex#belongsTo recognizes either the project (as before) or the jar path as its family name - when removing a JAR package fragment root, the index manager is requested to discard jobs of family jar-path. ==== Fixed
Fixed
Removing 'FIXED' status, until it gets approved for F4
Fix is quite trivial, and similar to what we do in other related situations, we simply had missed this one scenario. If we don't fix it then on racing conditions, users might still find matches using search queries, open type dialog, inside JARs which are no longer accessible. This is an area where we are trying to have zero bugs, and this is the only left at this stage.
SWT is not in the list anymore when swt.win32 is closed. Verified.
Reviewed and approved fix.
No veto. Marking as fixed.
Verified.