aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar nharmata <nharmata@google.com>2018-01-16 15:59:44 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2018-01-16 16:01:50 -0800
commit6f35e2d81a4d10359d39643bd03887d1b87f4224 (patch)
treefb971d4e4864c8dca3d0fd3585d07fafd448b455
parent2b876c112b06d458585356682b6a11bc392ca4cc (diff)
Have UnixGlob explicitly handle RuntimeExceptions encountered by individual glob tasks.
RELNOTES: None PiperOrigin-RevId: 182125500
-rw-r--r--src/main/java/com/google/devtools/build/lib/vfs/UnixGlob.java8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/vfs/UnixGlob.java b/src/main/java/com/google/devtools/build/lib/vfs/UnixGlob.java
index ff2496547b..b20df29483 100644
--- a/src/main/java/com/google/devtools/build/lib/vfs/UnixGlob.java
+++ b/src/main/java/com/google/devtools/build/lib/vfs/UnixGlob.java
@@ -449,8 +449,8 @@ public final class UnixGlob {
return delegate;
}
- public void setException(IOException exception) {
- delegate.setException(exception);
+ public void setException(Throwable throwable) {
+ delegate.setException(throwable);
}
public void set(List<Path> paths) {
@@ -488,7 +488,7 @@ public final class UnixGlob {
private final ThreadPoolExecutor executor;
private final AtomicLong totalOps = new AtomicLong(0);
private final AtomicLong pendingOps = new AtomicLong(0);
- private final AtomicReference<IOException> failure = new AtomicReference<>();
+ private final AtomicReference<Throwable> failure = new AtomicReference<>();
private volatile boolean canceled = false;
GlobVisitor(
@@ -593,7 +593,7 @@ public final class UnixGlob {
Profiler.instance().startTask(ProfilerTask.VFS_GLOB, this);
try {
reallyGlob(base, baseIsDir, idx, context);
- } catch (IOException e) {
+ } catch (Throwable e) {
failure.set(e);
} finally {
Profiler.instance().completeTask(ProfilerTask.VFS_GLOB);