in org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/resolve/IvyRunner.java [38:62]
public boolean launchIvyThread(Runnable runnable, Ivy ivy, IProgressMonitor monitor) {
if (monitor != null && monitor.isCanceled()) {
return true;
}
Thread runnerThread = new Thread(runnable);
runnerThread.setName("IvyDE resolver thread");
runnerThread.start();
while (true) {
try {
runnerThread.join(WAIT_FOR_JOIN);
} catch (InterruptedException e) {
ivy.interrupt(runnerThread);
return true;
}
if (!runnerThread.isAlive()) {
return false;
}
if (monitor != null && monitor.isCanceled()) {
ivy.interrupt(runnerThread);
return true;
}
}
}