You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@netbeans.apache.org by ge...@apache.org on 2021/05/02 07:40:08 UTC
[netbeans] branch delivery updated: [NETBEANS-5475] fix potential
NPE after GradleJavaSourceSet.relativePath() calls
This is an automated email from the ASF dual-hosted git repository.
geertjan pushed a commit to branch delivery
in repository https://gitbox.apache.org/repos/asf/netbeans.git
The following commit(s) were added to refs/heads/delivery by this push:
new 0e28d34 [NETBEANS-5475] fix potential NPE after GradleJavaSourceSet.relativePath() calls
new 4cf8454 Merge pull request #2931 from lkishalmi/NETBEANS-5475
0e28d34 is described below
commit 0e28d3467fc0c92b39119a4312facbf13c34ec01
Author: Laszlo Kishalmi <la...@gmail.com>
AuthorDate: Sat May 1 23:02:08 2021 -0700
[NETBEANS-5475] fix potential NPE after GradleJavaSourceSet.relativePath() calls
---
.../modules/gradle/java/GradleJavaTokenProvider.java | 12 +++++++-----
.../gradle/java/queries/FileBuiltQueryImpl.java | 18 ++++++++++--------
2 files changed, 17 insertions(+), 13 deletions(-)
diff --git a/java/gradle.java/src/org/netbeans/modules/gradle/java/GradleJavaTokenProvider.java b/java/gradle.java/src/org/netbeans/modules/gradle/java/GradleJavaTokenProvider.java
index 21ef6ac..63a64a0 100644
--- a/java/gradle.java/src/org/netbeans/modules/gradle/java/GradleJavaTokenProvider.java
+++ b/java/gradle.java/src/org/netbeans/modules/gradle/java/GradleJavaTokenProvider.java
@@ -134,11 +134,13 @@ public class GradleJavaTokenProvider implements ReplaceTokenProvider {
GradleJavaSourceSet sourceSet = gjp.containingSourceSet(f);
if (sourceSet != null) {
String relPath = sourceSet.relativePath(f);
- ret = (relPath.lastIndexOf('.') > 0 ?
- relPath.substring(0, relPath.lastIndexOf('.')) :
- relPath).replace('/', '.');
- if (fo.isFolder()) {
- ret = ret + '*';
+ if (relPath != null) {
+ ret = (relPath.lastIndexOf('.') > 0 ?
+ relPath.substring(0, relPath.lastIndexOf('.')) :
+ relPath).replace('/', '.');
+ if (fo.isFolder()) {
+ ret = ret + '*';
+ }
}
}
}
diff --git a/java/gradle.java/src/org/netbeans/modules/gradle/java/queries/FileBuiltQueryImpl.java b/java/gradle.java/src/org/netbeans/modules/gradle/java/queries/FileBuiltQueryImpl.java
index ae76f10..61319a7 100644
--- a/java/gradle.java/src/org/netbeans/modules/gradle/java/queries/FileBuiltQueryImpl.java
+++ b/java/gradle.java/src/org/netbeans/modules/gradle/java/queries/FileBuiltQueryImpl.java
@@ -113,15 +113,17 @@ public class FileBuiltQueryImpl extends ProjectOpenedHook implements FileBuiltQu
GradleJavaSourceSet sourceSet = gjp.containingSourceSet(f);
if (sourceSet != null) {
String relFile = sourceSet.relativePath(f);
- String relClass = relFile.substring(0, relFile.lastIndexOf('.')) + ".class"; //NOI18N
- String moduleRoot = null;
- File moduleInfo = sourceSet.findResource("module-info.java", false, JAVA); //NOI18N
- if (moduleInfo != null && sourceSet.getCompilerArgs(JAVA).contains("--module-source-path")) {
- moduleRoot = SourceUtils.parseModuleName(FileUtil.toFileObject(moduleInfo));
+ if (relFile != null) {
+ String relClass = relFile.substring(0, relFile.lastIndexOf('.')) + ".class"; //NOI18N
+ String moduleRoot = null;
+ File moduleInfo = sourceSet.findResource("module-info.java", false, JAVA); //NOI18N
+ if (moduleInfo != null && sourceSet.getCompilerArgs(JAVA).contains("--module-source-path")) {
+ moduleRoot = SourceUtils.parseModuleName(FileUtil.toFileObject(moduleInfo));
+ }
+ try {
+ ret = new StatusImpl(file, sourceSet.getOutputClassDirs(), relClass, moduleRoot);
+ } catch (DataObjectNotFoundException ex) {}
}
- try {
- ret = new StatusImpl(file, sourceSet.getOutputClassDirs(), relClass, moduleRoot);
- } catch (DataObjectNotFoundException ex) {}
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists