diff options
Diffstat (limited to 'bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSException.java')
-rw-r--r-- | bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSException.java | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSException.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSException.java index 14a42b3e1..8f05aba39 100644 --- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSException.java +++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSException.java @@ -76,6 +76,11 @@ public class CVSException extends TeamException { public static CVSException wrapException(CoreException e) { IStatus status = e.getStatus(); - return new CVSException(new CVSStatus(status.getSeverity(), status.getCode(), status.getMessage(), e)); + // If the exception is not a multi-status, wrap the exception to keep the original stack trace. + // If the exception is a maulit-status, the interesting stack traces should eb in the childen already + if ( ! status.isMultiStatus()) { + status = new CVSStatus(status.getSeverity(), status.getCode(), status.getMessage(), e); + } + return new CVSException(status); } }
\ No newline at end of file |