Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Arthorne2009-05-05 22:20:02 +0000
committerJohn Arthorne2009-05-05 22:20:02 +0000
commite21f56d665aefe6f0d03ff6b910bfcacd867b54f (patch)
tree93741427d533c249672f3054566b6d63fe783786 /bundles/org.eclipse.equinox.p2.repository
parentb716f17ce3159f8387f3570e455a108b1206b2ba (diff)
downloadrt.equinox.p2-e21f56d665aefe6f0d03ff6b910bfcacd867b54f.tar.gz
rt.equinox.p2-e21f56d665aefe6f0d03ff6b910bfcacd867b54f.tar.xz
rt.equinox.p2-e21f56d665aefe6f0d03ff6b910bfcacd867b54f.zip
Bug 274844 cancel while waiting on timeout during HEAD request has no effectv20090505-1942
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.repository')
-rw-r--r--bundles/org.eclipse.equinox.p2.repository/src/org/eclipse/equinox/internal/p2/repository/FileInfoReader.java7
1 files changed, 5 insertions, 2 deletions
diff --git a/bundles/org.eclipse.equinox.p2.repository/src/org/eclipse/equinox/internal/p2/repository/FileInfoReader.java b/bundles/org.eclipse.equinox.p2.repository/src/org/eclipse/equinox/internal/p2/repository/FileInfoReader.java
index f2f1a2279..4fe4643c5 100644
--- a/bundles/org.eclipse.equinox.p2.repository/src/org/eclipse/equinox/internal/p2/repository/FileInfoReader.java
+++ b/bundles/org.eclipse.equinox.p2.repository/src/org/eclipse/equinox/internal/p2/repository/FileInfoReader.java
@@ -38,6 +38,7 @@ public class FileInfoReader extends Job implements IRemoteFileSystemListener {
private final IConnectContext connectContext;
final Boolean[] barrier = new Boolean[1];
private IRemoteFile[] remoteFiles;
+ private IRemoteFileSystemRequest browseRequest;
/* (non-Javadoc)
* @see org.eclipse.core.runtime.jobs.Job#run(org.eclipse.core.runtime.IProgressMonitor)
@@ -46,7 +47,9 @@ public class FileInfoReader extends Job implements IRemoteFileSystemListener {
synchronized (barrier) {
while (barrier[0] == null) {
try {
- barrier.wait();
+ barrier.wait(1000);
+ if (theMonitor.isCanceled() && browseRequest != null)
+ browseRequest.cancel();
} catch (InterruptedException e) {
//ignore
}
@@ -174,7 +177,7 @@ public class FileInfoReader extends Job implements IRemoteFileSystemListener {
try {
IFileID fileID = FileIDFactory.getDefault().createFileID(adapter.getBrowseNamespace(), uri.toString());
- adapter.sendBrowseRequest(fileID, this);
+ browseRequest = adapter.sendBrowseRequest(fileID, this);
} catch (RemoteFileSystemException e) {
exception = e;
} catch (FileCreateException e) {

Back to the top