summaryrefslogtreecommitdiffstats
path: root/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/FileImage.c
diff options
context:
space:
mode:
Diffstat (limited to 'ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/FileImage.c')
-rw-r--r--ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/FileImage.c97
1 files changed, 50 insertions, 47 deletions
diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/FileImage.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/FileImage.c
index 4f96cb6cb5..d8818dd958 100644
--- a/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/FileImage.c
+++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/FileImage.c
@@ -8,22 +8,22 @@
#include "HexEditor.h"
-extern EFI_HANDLE HImageHandleBackup;
-extern HEFI_EDITOR_BUFFER_IMAGE HBufferImage;
+extern EFI_HANDLE HImageHandleBackup;
+extern HEFI_EDITOR_BUFFER_IMAGE HBufferImage;
-extern BOOLEAN HBufferImageNeedRefresh;
-extern BOOLEAN HBufferImageOnlyLineNeedRefresh;
-extern BOOLEAN HBufferImageMouseNeedRefresh;
+extern BOOLEAN HBufferImageNeedRefresh;
+extern BOOLEAN HBufferImageOnlyLineNeedRefresh;
+extern BOOLEAN HBufferImageMouseNeedRefresh;
extern HEFI_EDITOR_GLOBAL_EDITOR HMainEditor;
-HEFI_EDITOR_FILE_IMAGE HFileImage;
-HEFI_EDITOR_FILE_IMAGE HFileImageBackupVar;
+HEFI_EDITOR_FILE_IMAGE HFileImage;
+HEFI_EDITOR_FILE_IMAGE HFileImageBackupVar;
//
// for basic initialization of HFileImage
//
-HEFI_EDITOR_BUFFER_IMAGE HFileImageConst = {
+HEFI_EDITOR_BUFFER_IMAGE HFileImageConst = {
NULL,
0,
FALSE
@@ -66,7 +66,7 @@ HFileImageBackup (
)
{
SHELL_FREE_NON_NULL (HFileImageBackupVar.FileName);
- HFileImageBackupVar.FileName = CatSPrint(NULL, L"%s", HFileImage.FileName);
+ HFileImageBackupVar.FileName = CatSPrint (NULL, L"%s", HFileImage.FileName);
if (HFileImageBackupVar.FileName == NULL) {
return EFI_OUT_OF_RESOURCES;
}
@@ -84,7 +84,6 @@ HFileImageCleanup (
VOID
)
{
-
SHELL_FREE_NON_NULL (HFileImage.FileName);
SHELL_FREE_NON_NULL (HFileImageBackupVar.FileName);
@@ -101,7 +100,7 @@ HFileImageCleanup (
**/
EFI_STATUS
HFileImageSetFileName (
- IN CONST CHAR16 *Str
+ IN CONST CHAR16 *Str
)
{
if (Str == HFileImage.FileName) {
@@ -111,6 +110,7 @@ HFileImageSetFileName (
//
return EFI_SUCCESS;
}
+
//
// free the old file name
//
@@ -136,18 +136,18 @@ HFileImageSetFileName (
EFI_STATUS
HFileImageRead (
IN CONST CHAR16 *FileName,
- IN BOOLEAN Recover
+ IN BOOLEAN Recover
)
{
- HEFI_EDITOR_LINE *Line;
- UINT8 *Buffer;
- CHAR16 *UnicodeBuffer;
- EFI_STATUS Status;
+ HEFI_EDITOR_LINE *Line;
+ UINT8 *Buffer;
+ CHAR16 *UnicodeBuffer;
+ EFI_STATUS Status;
//
// variable initialization
//
- Line = NULL;
+ Line = NULL;
//
// in this function, when you return error ( except EFI_OUT_OF_RESOURCES )
@@ -157,14 +157,14 @@ HFileImageRead (
// so if you want to print the error status
// you should set the status string
//
- Status = ReadFileIntoBuffer (FileName, (VOID**)&Buffer, &HFileImage.Size, &HFileImage.ReadOnly);
+ Status = ReadFileIntoBuffer (FileName, (VOID **)&Buffer, &HFileImage.Size, &HFileImage.ReadOnly);
//
// NULL pointer is only also a failure for a non-zero file size.
//
- if ((EFI_ERROR(Status)) || (Buffer == NULL && HFileImage.Size != 0)) {
- UnicodeBuffer = CatSPrint(NULL, L"Read error on file %s: %r", FileName, Status);
+ if ((EFI_ERROR (Status)) || ((Buffer == NULL) && (HFileImage.Size != 0))) {
+ UnicodeBuffer = CatSPrint (NULL, L"Read error on file %s: %r", FileName, Status);
if (UnicodeBuffer == NULL) {
- SHELL_FREE_NON_NULL(Buffer);
+ SHELL_FREE_NON_NULL (Buffer);
return EFI_OUT_OF_RESOURCES;
}
@@ -195,12 +195,12 @@ HFileImageRead (
HBufferImage.HighBits = TRUE;
HBufferImage.BufferPosition.Row = 1;
HBufferImage.BufferPosition.Column = 1;
- HBufferImage.BufferType = FileTypeFileBuffer;
+ HBufferImage.BufferType = FileTypeFileBuffer;
if (!Recover) {
- UnicodeBuffer = CatSPrint(NULL, L"%d Lines Read", HBufferImage.NumLines);
+ UnicodeBuffer = CatSPrint (NULL, L"%d Lines Read", HBufferImage.NumLines);
if (UnicodeBuffer == NULL) {
- SHELL_FREE_NON_NULL(Buffer);
+ SHELL_FREE_NON_NULL (Buffer);
return EFI_OUT_OF_RESOURCES;
}
@@ -222,7 +222,7 @@ HFileImageRead (
//
Line = HBufferImageCreateLine ();
if (Line == NULL) {
- SHELL_FREE_NON_NULL(Buffer);
+ SHELL_FREE_NON_NULL (Buffer);
return EFI_OUT_OF_RESOURCES;
}
@@ -248,20 +248,19 @@ HFileImageRead (
**/
EFI_STATUS
HFileImageSave (
- IN CHAR16 *FileName
+ IN CHAR16 *FileName
)
{
-
- LIST_ENTRY *Link;
- HEFI_EDITOR_LINE *Line;
- CHAR16 *Str;
- EFI_STATUS Status;
- UINTN NumLines;
- SHELL_FILE_HANDLE FileHandle;
- UINTN TotalSize;
- UINT8 *Buffer;
- UINT8 *Ptr;
- EDIT_FILE_TYPE BufferTypeBackup;
+ LIST_ENTRY *Link;
+ HEFI_EDITOR_LINE *Line;
+ CHAR16 *Str;
+ EFI_STATUS Status;
+ UINTN NumLines;
+ SHELL_FILE_HANDLE FileHandle;
+ UINTN TotalSize;
+ UINT8 *Buffer;
+ UINT8 *Ptr;
+ EDIT_FILE_TYPE BufferTypeBackup;
BufferTypeBackup = HBufferImage.BufferType;
HBufferImage.BufferType = FileTypeFileBuffer;
@@ -269,11 +268,11 @@ HFileImageSave (
//
// if is the old file
//
- if (HFileImage.FileName != NULL && FileName != NULL && StrCmp (FileName, HFileImage.FileName) == 0) {
+ if ((HFileImage.FileName != NULL) && (FileName != NULL) && (StrCmp (FileName, HFileImage.FileName) == 0)) {
//
// check whether file exists on disk
//
- if (ShellIsFile(FileName) == EFI_SUCCESS) {
+ if (ShellIsFile (FileName) == EFI_SUCCESS) {
//
// current file exists on disk
// so if not modified, then not save
@@ -281,6 +280,7 @@ HFileImageSave (
if (HBufferImage.Modified == FALSE) {
return EFI_SUCCESS;
}
+
//
// if file is read-only, set error
//
@@ -291,7 +291,7 @@ HFileImageSave (
}
}
- if (ShellIsDirectory(FileName) == EFI_SUCCESS) {
+ if (ShellIsDirectory (FileName) == EFI_SUCCESS) {
StatusBarSetStatusString (L"Directory Can Not Be Saved");
return EFI_LOAD_ERROR;
}
@@ -303,11 +303,11 @@ HFileImageSave (
// the file exits, delete it
//
Status = ShellDeleteFile (&FileHandle);
- if (EFI_ERROR (Status) || Status == EFI_WARN_DELETE_FAILURE) {
+ if (EFI_ERROR (Status) || (Status == EFI_WARN_DELETE_FAILURE)) {
StatusBarSetStatusString (L"Write File Failed");
return EFI_LOAD_ERROR;
}
- }
+ }
//
// write all the lines back to disk
@@ -320,11 +320,13 @@ HFileImageSave (
if (Line->Size != 0) {
TotalSize += Line->Size;
}
+
//
// end of if Line -> Size != 0
//
NumLines++;
}
+
//
// end of for Link
//
@@ -341,12 +343,12 @@ HFileImageSave (
CopyMem (Ptr, Line->Buffer, Line->Size);
Ptr += Line->Size;
}
+
//
// end of if Line -> Size != 0
//
}
-
Status = ShellOpenFileByName (FileName, &FileHandle, EFI_FILE_MODE_READ|EFI_FILE_MODE_WRITE|EFI_FILE_MODE_CREATE, 0);
if (EFI_ERROR (Status)) {
@@ -361,22 +363,23 @@ HFileImageSave (
return EFI_LOAD_ERROR;
}
- ShellCloseFile(&FileHandle);
+ ShellCloseFile (&FileHandle);
HBufferImage.Modified = FALSE;
//
// set status string
//
- Str = CatSPrint(NULL, L"%d Lines Written", NumLines);
+ Str = CatSPrint (NULL, L"%d Lines Written", NumLines);
StatusBarSetStatusString (Str);
FreePool (Str);
//
// now everything is ready , you can set the new file name to filebuffer
//
- if ((BufferTypeBackup != FileTypeFileBuffer && FileName != NULL) ||
- (FileName != NULL && HFileImage.FileName != NULL && StringNoCaseCompare (&FileName, &HFileImage.FileName) != 0)){
+ if (((BufferTypeBackup != FileTypeFileBuffer) && (FileName != NULL)) ||
+ ((FileName != NULL) && (HFileImage.FileName != NULL) && (StringNoCaseCompare (&FileName, &HFileImage.FileName) != 0)))
+ {
//
// not the same
//