summaryrefslogtreecommitdiff
path: root/Tools/Source/GenBuild/org/tianocore/build/fpd
diff options
context:
space:
mode:
authorklu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524>2006-06-13 09:40:16 +0000
committerklu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524>2006-06-13 09:40:16 +0000
commit7db4ab705a654e2202b083968e92d5b552007d6b (patch)
treedf015cde264a89ed7329d5f33de34f6e7e25165a /Tools/Source/GenBuild/org/tianocore/build/fpd
parent8960cdebac8c75f13f1cb6afa932f0ae323a138b (diff)
downloadedk2-7db4ab705a654e2202b083968e92d5b552007d6b.zip
edk2-7db4ab705a654e2202b083968e92d5b552007d6b.tar.gz
edk2-7db4ab705a654e2202b083968e92d5b552007d6b.tar.bz2
Fix some bugs in PCD tools:
1) Normalize the exception text format, 2) Add throw exception in some special case. 3) Add more code to verify Datum Size. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@497 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'Tools/Source/GenBuild/org/tianocore/build/fpd')
-rw-r--r--Tools/Source/GenBuild/org/tianocore/build/fpd/FpdParserTask.java34
1 files changed, 19 insertions, 15 deletions
diff --git a/Tools/Source/GenBuild/org/tianocore/build/fpd/FpdParserTask.java b/Tools/Source/GenBuild/org/tianocore/build/fpd/FpdParserTask.java
index 1e3de2a..011e13d 100644
--- a/Tools/Source/GenBuild/org/tianocore/build/fpd/FpdParserTask.java
+++ b/Tools/Source/GenBuild/org/tianocore/build/fpd/FpdParserTask.java
@@ -783,20 +783,24 @@ public class FpdParserTask extends Task {
}
public void collectPCDInformation() {
- CollectPCDAction collectAction = new CollectPCDAction ();
- //
- // Collect all PCD information from FPD to MSA, and get help information from SPD.
- // These all information will be stored into memory database for future usage such
- // as autogen.
- //
- try {
- collectAction.perform (
- getProject().getProperty("WORKSPACE_DIR"),
- fpdFilename.getPath(),
- ActionMessage.MAX_MESSAGE_LEVEL
- );
- } catch (Exception exp) {
- throw new BuildException (String.format("Fail to do PCD preprocess from FPD file, the cause is %s", exp.getMessage()));
- }
+ String exceptionString = null;
+ CollectPCDAction collectAction = new CollectPCDAction ();
+ //
+ // Collect all PCD information from FPD to MSA, and get help information from SPD.
+ // These all information will be stored into memory database for future usage such
+ // as autogen.
+ //
+ try {
+ collectAction.perform (getProject().getProperty("WORKSPACE_DIR"),
+ fpdFilename.getPath(),
+ ActionMessage.MAX_MESSAGE_LEVEL
+ );
+ } catch (Exception exp) {
+ exceptionString = exp.getMessage();
+ if (exceptionString == null) {
+ exceptionString = "[Internal Error]Pcd tools catch a internel errors, Please report this bug into TianoCore or send email to Wang, scott or Lu, ken!";
+ }
+ throw new BuildException (String.format("Fail to do PCD preprocess from FPD file: %s", exceptionString));
+ }
}
}