Update ParseInf to resolve different line separator between WINDOWS and LINUX (\r\n vs. \n). Update GenFvImage to resolve different file separator between WINDOWS and LINUX (\ vs. /). Add variable initialize for SymImageSize.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1908 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
wuyizhong 2006-11-07 03:03:06 +00:00
parent b51f14f4d6
commit 1d940d05b5
3 changed files with 23 additions and 4 deletions

View File

@ -116,7 +116,15 @@ Returns:
// //
// Add the null termination over the 0x0D // Add the null termination over the 0x0D
// //
InputBuffer[CharsToCopy - 1] = '\0'; if (InputBuffer[CharsToCopy - 1] == '\r') {
InputBuffer[CharsToCopy - 1] = '\0';
} else {
InputBuffer[CharsToCopy] = '\0';
}
// //
// Increment the current file pointer (include the 0x0A) // Increment the current file pointer (include the 0x0A)

View File

@ -126,7 +126,7 @@ Returns:
CHAR8 SymFileNameBuffer[_MAX_PATH]; CHAR8 SymFileNameBuffer[_MAX_PATH];
CHAR8 *SymFileName; CHAR8 *SymFileName;
UINT8 *SymImage; UINT8 *SymImage;
UINTN SymImageSize; UINTN SymImageSize = 0;
CHAR8 *CurrentSymString; CHAR8 *CurrentSymString;
FvFileName = FvFileNameBuffer; FvFileName = FvFileNameBuffer;

View File

@ -48,6 +48,17 @@ Abstract:
#include "EfiCompress.h" #include "EfiCompress.h"
#include "WinNtInclude.h" #include "WinNtInclude.h"
//
// Different file separater for Linux and Windows
//
#ifdef __GNUC__
#define FILE_SEP_CHAR '/'
#define FILE_SEP_STRING "/"
#else
#define FILE_SEP_CHAR '\\'
#define FILE_SEP_STRING "\\"
#endif
static UINT32 MaxFfsAlignment = 0; static UINT32 MaxFfsAlignment = 0;
// //
// Local function prototypes // Local function prototypes
@ -1374,7 +1385,7 @@ Returns:
// Copy the file name for the path of the sym file and truncate the name portion. // Copy the file name for the path of the sym file and truncate the name portion.
// //
strcpy (SymFileName, Buffer); strcpy (SymFileName, Buffer);
Ptr = strrchr (SymFileName, '\\'); Ptr = strrchr (SymFileName, FILE_SEP_CHAR);
assert (Ptr); assert (Ptr);
Ptr[0] = 0; Ptr[0] = 0;
@ -1411,7 +1422,7 @@ Returns:
// Add the symbol file name and extension to the file path. // Add the symbol file name and extension to the file path.
// //
strcat (Buffer, ".sym"); strcat (Buffer, ".sym");
strcat (SymFileName, "\\"); strcat (SymFileName, FILE_SEP_CHAR);
strcat (SymFileName, Buffer); strcat (SymFileName, Buffer);
} else { } else {
// //