f66a335 ShellPkg/UefiShellDebug1CommandsLib: fix ShellCloseFile() call

Authored and Committed by lersek 4 years ago
    ShellPkg/UefiShellDebug1CommandsLib: fix ShellCloseFile() call
    
    In the FileBufferSave() function, we invoke ShellCloseFile() if "Directory
    Can Not Be Saved".
    
    The ShellCloseFile() function takes a (SHELL_FILE_HANDLE*) parameter
    called "FileHandle", and correctly passes the de-referenced (*FileHandle)
    to EFI_SHELL_CLOSE_FILE, which takes a SHELL_FILE_HANDLE.
    
    However, FileBufferSave() passes SHELL_FILE_HANDLE to ShellCloseFile(),
    not the expected (SHELL_FILE_HANDLE*). Correct it.
    
    This fixes an actual bug that has remained hidden for two reasons:
    
    - pointer-to-VOID converts from/to any pointer-to-object type silently,
    - the bug is on an error path which has likely never fired in practice.
    
    Cc: Jaben Carsey <jaben.carsey@intel.com>
    Cc: Ray Ni <ray.ni@intel.com>
    Cc: Zhichao Gao <zhichao.gao@intel.com>
    Signed-off-by: Laszlo Ersek <lersek@redhat.com>