| 258 | } |
| 259 | |
| 260 | UINT8 |
| 261 | CVfrErrorHandle::HandleWarning ( |
| 262 | IN EFI_VFR_WARNING_CODE WarningCode, |
| 263 | IN UINT32 LineNum, |
| 264 | IN CHAR8 *TokName |
| 265 | ) |
| 266 | { |
| 267 | UINT32 Index; |
| 268 | CHAR8 *FileName = NULL; |
| 269 | UINT32 FileLine; |
| 270 | CONST CHAR8 *WarningMsg = NULL; |
| 271 | |
| 272 | if (mVfrWarningHandleTable == NULL) { |
| 273 | return 1; |
| 274 | } |
| 275 | |
| 276 | GetFileNameLineNum (LineNum, &FileName, &FileLine); |
| 277 | |
| 278 | if (mWarningAsError) { |
| 279 | Error (FileName, FileLine, 0x2220, (CHAR8 *) "warning treated as error", NULL); |
| 280 | } |
| 281 | |
| 282 | for (Index = 0; mVfrWarningHandleTable[Index].mWarningCode != VFR_WARNING_CODEUNDEFINED; Index++) { |
| 283 | if (WarningCode == mVfrWarningHandleTable[Index].mWarningCode) { |
| 284 | WarningMsg = mVfrWarningHandleTable[Index].mWarningMsg; |
| 285 | break; |
| 286 | } |
| 287 | } |
| 288 | |
| 289 | if (WarningMsg != NULL) { |
| 290 | Warning (FileName, FileLine, 0, TokName, (CHAR8 *) "\t%s\n", (CHAR8 *) WarningMsg); |
| 291 | return 1; |
| 292 | } else { |
| 293 | return 0; |
| 294 | } |
| 295 | } |
| 296 | |
| 297 | CVfrErrorHandle gCVfrErrorHandle; |