Skip to main content

This CGIT instance is deprecated, and repositories have been moved to Gitlab or Github. See the repository descriptions for specific locations.

summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornitind2010-02-23 02:34:48 +0000
committernitind2010-02-23 02:34:48 +0000
commitcf27d44945423e9ac687deb634c48c5d1515dd79 (patch)
treebc67f9154141be254f685fc47d0cf5b265948641
parentdecda5e14045d3ec1781f2d3f29365ba0603af3e (diff)
downloadwebtools.jsdt.core-cf27d44945423e9ac687deb634c48c5d1515dd79.tar.gz
webtools.jsdt.core-cf27d44945423e9ac687deb634c48c5d1515dd79.tar.xz
webtools.jsdt.core-cf27d44945423e9ac687deb634c48c5d1515dd79.zip
[nobug] catch JSME from missing JSDoc range
-rw-r--r--bundles/org.eclipse.wst.jsdt.ui/src/org/eclipse/wst/jsdt/ui/JSdocContentAccess.java40
1 files changed, 22 insertions, 18 deletions
diff --git a/bundles/org.eclipse.wst.jsdt.ui/src/org/eclipse/wst/jsdt/ui/JSdocContentAccess.java b/bundles/org.eclipse.wst.jsdt.ui/src/org/eclipse/wst/jsdt/ui/JSdocContentAccess.java
index fbe6e449..77b9b4cd 100644
--- a/bundles/org.eclipse.wst.jsdt.ui/src/org/eclipse/wst/jsdt/ui/JSdocContentAccess.java
+++ b/bundles/org.eclipse.wst.jsdt.ui/src/org/eclipse/wst/jsdt/ui/JSdocContentAccess.java
@@ -94,27 +94,31 @@ public class JSdocContentAccess {
IBuffer buf= openable.getBuffer();
if (buf != null) {
- // source or attachment found
- ISourceRange jsDocRange= member.getJSdocRange();
- if(jsDocRange == null && member.getElementType() == IJavaScriptElement.TYPE) {
- IFunction constructor = ((IType) member).getFunction(member.getElementName(), null);
- if(constructor.exists()) {
- jsDocRange = constructor.getJSdocRange();
- }
- }
- if (jsDocRange != null) {
- JavaDocCommentReader reader= new JavaDocCommentReader(buf, jsDocRange.getOffset(), jsDocRange.getOffset() + jsDocRange.getLength() - 1);
- if (!containsOnlyInheritDoc(reader, jsDocRange.getLength())) {
- reader.reset();
- readers.add(reader);
+ try {
+ // source or attachment found
+ ISourceRange jsDocRange = member.getJSdocRange();
+ if (jsDocRange == null && member.getElementType() == IJavaScriptElement.TYPE) {
+ IFunction constructor = ((IType) member).getFunction(member.getElementName(), null);
+ if (constructor.exists()) {
+ jsDocRange = constructor.getJSdocRange();
+ }
}
- else if (allowInherited && (member.getElementType() == IJavaScriptElement.METHOD)) {
- Reader hierarchyDocReader = findDocInHierarchy((IFunction) member);
- if (hierarchyDocReader != null)
- readers.add(hierarchyDocReader);
+ if (jsDocRange != null) {
+ JavaDocCommentReader reader = new JavaDocCommentReader(buf, jsDocRange.getOffset(), jsDocRange.getOffset() + jsDocRange.getLength() - 1);
+ if (!containsOnlyInheritDoc(reader, jsDocRange.getLength())) {
+ reader.reset();
+ readers.add(reader);
+ }
+ else if (allowInherited && (member.getElementType() == IJavaScriptElement.METHOD)) {
+ Reader hierarchyDocReader = findDocInHierarchy((IFunction) member);
+ if (hierarchyDocReader != null)
+ readers.add(hierarchyDocReader);
+ }
}
}
-
+ catch (JavaScriptModelException e) {
+ // doesn't exist
+ }
}
if (!readers.isEmpty()) {

Back to the top