]> source.dussan.org Git - xmlgraphics-fop.git/commitdiff
Explicitly calling System.exit(0) for non-AWTRenderer outputs to close any threads
authorGlen Mazza <gmazza@apache.org>
Sat, 25 Oct 2003 02:58:03 +0000 (02:58 +0000)
committerGlen Mazza <gmazza@apache.org>
Sat, 25 Oct 2003 02:58:03 +0000 (02:58 +0000)
that may be active as a result of AWT (svg) or other processing.

See: http://marc.theaimsgroup.com/?l=fop-dev&m=106703706423223&w=2

git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@196971 13f79535-47bb-0310-9956-ffa450edef68

src/java/org/apache/fop/apps/Fop.java

index 441ca0c5145b0575580e035121315634dc3f5793..37ebb1d8ee6d69211a296eb7bf344df2b1629c5a 100644 (file)
@@ -105,6 +105,13 @@ public class Fop {
                     bos.close();
                 }
             }
+
+            // System.exit(0) called to close AWT/SVG-created threads, if any.
+            // AWTRenderer closes with window shutdown, so exit() should not
+            // be called here
+            if (options.getOutputMode() != CommandLineOptions.AWT_OUTPUT) {
+                System.exit(0);
+            }
         } catch (FOPException e) {
             if (e.getMessage() == null) {
                 System.err.println("Exception occured with a null error message");
@@ -116,6 +123,7 @@ public class Fop {
             } else {
                 System.err.println("Turn on debugging for more information");
             }
+            System.exit(1);
         } catch (java.io.IOException e) {
             System.err.println("" + e.getMessage());
             if (options != null && options.getLogger().isDebugEnabled()) {
@@ -123,6 +131,7 @@ public class Fop {
             } else {
                 System.err.println("Turn on debugging for more information");
             }
+            System.exit(1);
         }
     }
 }