From 94b0f428d7f089354312b22c80acadd26339004f Mon Sep 17 00:00:00 2001 From: hche10x Date: Tue, 5 Sep 2006 02:12:02 +0000 Subject: [PATCH] 1. Fix bug EDKT241 "If and MSA file is missing, the Wizard gives a NULL Pointer Exception, with no hints that the workspace is not valid." git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1444 6f19259b-4bc3-4df7-8a09-765794883524 --- .../org/tianocore/frameworkwizard/common/GlobalData.java | 9 +++++++++ .../frameworkwizard/workspace/WorkspaceTools.java | 5 +++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/common/GlobalData.java b/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/common/GlobalData.java index 4c179929a5..a50d2f104f 100644 --- a/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/common/GlobalData.java +++ b/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/common/GlobalData.java @@ -93,10 +93,13 @@ public class GlobalData { } catch (IOException e) { Log.err("Open Module Surface Area " + modulePath, e.getMessage()); + continue; } catch (XmlException e) { Log.err("Open Module Surface Area " + modulePath, e.getMessage()); + continue; } catch (Exception e) { Log.err("Open Module Surface Area " + modulePath, "Invalid file type"); + continue; } id = Tools.getId(modulePath, msa); mid = new ModuleIdentification(id, vPackageList.elementAt(indexI)); @@ -122,10 +125,13 @@ public class GlobalData { spd = OpenFile.openSpdFile(path); } catch (IOException e) { Log.err("Open Package Surface Area " + path, e.getMessage()); + continue; } catch (XmlException e) { Log.err("Open Package Surface Area " + path, e.getMessage()); + continue; } catch (Exception e) { Log.err("Open Package Surface Area " + path, "Invalid file type"); + continue; } id = Tools.getId(path, spd); vPackageList.addElement(id); @@ -150,10 +156,13 @@ public class GlobalData { fpd = OpenFile.openFpdFile(path); } catch (IOException e) { Log.err("Open Platform Surface Area " + path, e.getMessage()); + continue; } catch (XmlException e) { Log.err("Open Platform Surface Area " + path, e.getMessage()); + continue; } catch (Exception e) { Log.err("Open Platform Surface Area " + path, "Invalid file type"); + continue; } id = Tools.getId(path, fpd); vPlatformList.addElement(new PlatformIdentification(id)); diff --git a/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/workspace/WorkspaceTools.java b/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/workspace/WorkspaceTools.java index 9c8368b0d7..10b8aee17f 100644 --- a/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/workspace/WorkspaceTools.java +++ b/Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/workspace/WorkspaceTools.java @@ -294,8 +294,9 @@ public class WorkspaceTools { for (int index = 0; index < modulePaths.size(); index++) { modulePath = modulePaths.get(index); ModuleIdentification id = GlobalData.openingModuleList.getIdByPath(modulePath); - - v.addElement(id); + if (id != null) { + v.addElement(id); + } } Sort.sortModules(v, DataType.SORT_TYPE_ASCENDING); return v; -- 2.39.2