Bug 563868 - Changing tool in Profile Memory configuration causes NPE
- add null check of suppFileList in ValgrindOptionsTab.isGeneralValid()
Change-Id: Iafd78099a3f218f7c335ddfbbe0e3a6df8dbc979
Reviewed-on: https://git.eclipse.org/r/164030
Tested-by: Linux Tools Bot <linuxtools-bot@eclipse.org>
Reviewed-by: Jeff Johnston <jjohnstn@redhat.com>
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.launch/src/org/eclipse/linuxtools/internal/valgrind/launch/ValgrindOptionsTab.java b/valgrind/org.eclipse.linuxtools.valgrind.launch/src/org/eclipse/linuxtools/internal/valgrind/launch/ValgrindOptionsTab.java
index 2850919..95ec583 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.launch/src/org/eclipse/linuxtools/internal/valgrind/launch/ValgrindOptionsTab.java
+++ b/valgrind/org.eclipse.linuxtools.valgrind.launch/src/org/eclipse/linuxtools/internal/valgrind/launch/ValgrindOptionsTab.java
@@ -586,20 +586,22 @@
}
private boolean isGeneralValid() {
- String[] suppFiles = suppFileList.getItems();
- boolean result = true;
- for (int i = 0; i < suppFiles.length && result; i++) {
- try {
- IPath suppfile = getPlugin().parseWSPath(suppFiles[i]);
- if (!suppfile.toFile().exists()) {
- setErrorMessage(NLS.bind(Messages.getString("ValgrindOptionsTab.suppressions_file_doesnt_exist"), suppFiles[i])); //$NON-NLS-1$
- result = false;
- }
- } catch (CoreException e) {
- // should only occur if there's a cycle in variable substitution
- e.printStackTrace();
- }
- }
+ boolean result = true;
+ if (suppFileList != null) {
+ String[] suppFiles = suppFileList.getItems();
+ for (int i = 0; i < suppFiles.length && result; i++) {
+ try {
+ IPath suppfile = getPlugin().parseWSPath(suppFiles[i]);
+ if (!suppfile.toFile().exists()) {
+ setErrorMessage(NLS.bind(Messages.getString("ValgrindOptionsTab.suppressions_file_doesnt_exist"), suppFiles[i])); //$NON-NLS-1$
+ result = false;
+ }
+ } catch (CoreException e) {
+ // should only occur if there's a cycle in variable substitution
+ e.printStackTrace();
+ }
+ }
+ }
return result;
}