changeset 2162:5d0d1fbcec86

6978886: javadoc shows stacktrace after print error resulting from disk full Reviewed-by: jjg
author kizune
date Fri, 27 Sep 2013 21:20:01 +0400
parents e537073e5360
children 3114d240cf64
files src/share/classes/com/sun/tools/doclets/formats/html/HtmlDoclet.java src/share/classes/com/sun/tools/doclets/internal/toolkit/AbstractDoclet.java src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractBuilder.java
diffstat 3 files changed, 15 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/classes/com/sun/tools/doclets/formats/html/HtmlDoclet.java	Wed Jan 18 18:23:49 2017 +0000
+++ b/src/share/classes/com/sun/tools/doclets/formats/html/HtmlDoclet.java	Fri Sep 27 21:20:01 2013 +0400
@@ -185,6 +185,10 @@
                             .getClassBuilder(curr, prev, next, classtree);
                     classBuilder.build();
                 }
+            } catch (IOException e) {
+                throw new DocletAbortException(e);
+            } catch (DocletAbortException de) {
+                throw de;
             } catch (Exception e) {
                 e.printStackTrace();
                 throw new DocletAbortException(e);
--- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/AbstractDoclet.java	Wed Jan 18 18:23:49 2017 +0000
+++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/AbstractDoclet.java	Fri Sep 27 21:20:01 2013 +0400
@@ -84,6 +84,16 @@
         } catch (Configuration.Fault f) {
             root.printError(f.getMessage());
             return false;
+        } catch (DocletAbortException e) {
+            Throwable cause = e.getCause();
+            if (cause != null) {
+                if (cause.getLocalizedMessage() != null) {
+                    root.printError(cause.getLocalizedMessage());
+                } else {
+                    root.printError(cause.toString());
+                }
+            }
+            return false;
         } catch (Exception exc) {
             exc.printStackTrace();
             return false;
--- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractBuilder.java	Wed Jan 18 18:23:49 2017 +0000
+++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractBuilder.java	Fri Sep 27 21:20:01 2013 +0400
@@ -108,7 +108,7 @@
             configuration.root.printError("Unknown element: " + component);
             throw new DocletAbortException(e);
         } catch (InvocationTargetException e) {
-            e.getCause().printStackTrace();
+            throw new DocletAbortException(e.getCause());
         } catch (Exception e) {
             e.printStackTrace();
             configuration.root.printError("Exception " +