From af017cde1958ee623de20b3622ba96f35f2203a6 Mon Sep 17 00:00:00 2001 From: Joachim Klein Date: Fri, 12 Oct 2018 14:24:29 +0200 Subject: [PATCH] imported patch PrismLog-ignoreClose.patch --- prism/src/prism/PrismFileLog.java | 5 +++-- prism/src/prism/PrismLog.java | 21 +++++++++++++++++++++ 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/prism/src/prism/PrismFileLog.java b/prism/src/prism/PrismFileLog.java index 47d92387..80fd06c7 100644 --- a/prism/src/prism/PrismFileLog.java +++ b/prism/src/prism/PrismFileLog.java @@ -146,8 +146,9 @@ public class PrismFileLog extends PrismLog return; } - if (stdout) { - // we never close stdout + if (stdout || ignoreClose) { + // we never close stdout, and we ignore the call to close() + // if the ignoreClose flag is set return; } diff --git a/prism/src/prism/PrismLog.java b/prism/src/prism/PrismLog.java index 979e9655..248716de 100644 --- a/prism/src/prism/PrismLog.java +++ b/prism/src/prism/PrismLog.java @@ -51,6 +51,11 @@ public abstract class PrismLog implements Closeable, AutoCloseable */ protected int numberOfWarnings = 0; + /** + * Flag: Ignore calls to close. + */ + protected boolean ignoreClose = false; + /** * Sets the counter of warnings printed to 0. */ @@ -86,6 +91,22 @@ public abstract class PrismLog implements Closeable, AutoCloseable this.verbosityLevel = verbosityLevel; } + /** + * Set the flag "ignore calls to close()" to the given value. + */ + public void setIgnoreClose(boolean value) + { + ignoreClose = value; + } + + /** + * Set the flag for "ignore calls to close()". + */ + public boolean getIgnoreClose() + { + return ignoreClose; + } + public abstract boolean ready(); public abstract long getFilePointer();