]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/platform/ui/FpdFrameworkModules.java
remove comments before ModuleSA and library instance , if any, in xml file when delet...
[mirror_edk2.git] / Tools / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / platform / ui / FpdFrameworkModules.java
index b831703235e3519336c60b5c6d1266c9beda48fe..57af40ea0719804cb9b1a75802ffbe2fea297d25 100644 (file)
@@ -614,7 +614,7 @@ public class FpdFrameworkModules extends IInternalFrame {
                     if (selectedRow < 0) {\r
                         return;\r
                     }\r
-                    docConsole.setSaved(false);\r
+                    \r
 \r
                     TableSorter sorter = (TableSorter) jTableFpdModules.getModel();\r
                     selectedRow = sorter.getModelRowIndex(selectedRow);\r
@@ -627,22 +627,35 @@ public class FpdFrameworkModules extends IInternalFrame {
                     String pv = sa[ffcPkgVer];\r
                     String arch = sa[ffcModArch];\r
                     ModuleIdentification mi = WorkspaceProfile.getModuleId(mg + " " + mv + " " + pg + " " + pv + " " + arch);\r
-                    mv = mi.getVersion();\r
-                    pv = mi.getPackageId().getVersion();\r
-                    modelFpdModules.removeRow(selectedRow);\r
+                    if (mi != null) {\r
+                        mv = mi.getVersion();\r
+                        pv = mi.getPackageId().getVersion();\r
+                    }\r
+                    \r
+                    try {\r
+                        ffc.removeModuleSA(selectedRow);    \r
+                    }\r
+                    catch (Exception exp) {\r
+                        JOptionPane.showMessageDialog(frame, exp.getCause() + exp.getMessage());\r
+                        return;\r
+                    }\r
+                    \r
                     if (arch == null) {\r
                         // if no arch specified in ModuleSA\r
                         fpdMsa.remove(mg + mv + pg + pv);\r
                         \r
                     } else {\r
                         ArrayList<String> al = fpdMsa.get(mg + mv + pg + pv);\r
-                        al.remove(arch);\r
-                        if (al.size() == 0) {\r
-                            fpdMsa.remove(mg + mv + pg + pv);\r
+                        if (al != null) {\r
+                            al.remove(arch);\r
+                            if (al.size() == 0) {\r
+                                fpdMsa.remove(mg + mv + pg + pv);\r
+                            }\r
                         }\r
                     }\r
-\r
-                    ffc.removeModuleSA(selectedRow);\r
+                    \r
+                    modelFpdModules.removeRow(selectedRow);\r
+                    docConsole.setSaved(false);\r
                 }\r
             });\r
         }\r