aboutsummaryrefslogtreecommitdiffstats
path: root/server/sonar-process/src
diff options
context:
space:
mode:
authorSimon Brandhof <simon.brandhof@sonarsource.com>2016-09-21 12:11:29 +0200
committerSimon Brandhof <simon.brandhof@sonarsource.com>2016-09-21 15:09:56 +0200
commit966f777895168d42a31cd109dd7a3d136c8cb9fe (patch)
treea1355ca5ebfa7c348571188521a731a6c3a4ccbc /server/sonar-process/src
parent16bc84294198f9361dbf83557bd5087bedd7ef22 (diff)
downloadsonarqube-966f777895168d42a31cd109dd7a3d136c8cb9fe.tar.gz
sonarqube-966f777895168d42a31cd109dd7a3d136c8cb9fe.zip
Improve handling of some thread interruptions
Diffstat (limited to 'server/sonar-process/src')
-rw-r--r--server/sonar-process/src/main/java/org/sonar/process/ProcessEntryPoint.java2
-rw-r--r--server/sonar-process/src/main/java/org/sonar/process/StopWatcher.java2
2 files changed, 3 insertions, 1 deletions
diff --git a/server/sonar-process/src/main/java/org/sonar/process/ProcessEntryPoint.java b/server/sonar-process/src/main/java/org/sonar/process/ProcessEntryPoint.java
index 2ca262205ce..af3dd630291 100644
--- a/server/sonar-process/src/main/java/org/sonar/process/ProcessEntryPoint.java
+++ b/server/sonar-process/src/main/java/org/sonar/process/ProcessEntryPoint.java
@@ -135,7 +135,7 @@ public class ProcessEntryPoint implements Stoppable {
stopperThread.join();
lifecycle.tryToMoveTo(Lifecycle.State.STOPPED);
} catch (InterruptedException e) {
- // nothing to do, the process is going to be exited
+ Thread.currentThread().interrupt();
}
exit.exit(0);
}
diff --git a/server/sonar-process/src/main/java/org/sonar/process/StopWatcher.java b/server/sonar-process/src/main/java/org/sonar/process/StopWatcher.java
index 3248e519558..42cb2e9c3b2 100644
--- a/server/sonar-process/src/main/java/org/sonar/process/StopWatcher.java
+++ b/server/sonar-process/src/main/java/org/sonar/process/StopWatcher.java
@@ -56,6 +56,8 @@ public class StopWatcher extends Thread {
Thread.sleep(delayMs);
} catch (InterruptedException ignored) {
watching = false;
+ // restore interrupted flag
+ Thread.currentThread().interrupt();
}
}
}