diff options
author | Hao Wu <hao.a.wu@intel.com> | 2018-10-08 14:04:48 +0800 |
---|---|---|
committer | Hao Wu <hao.a.wu@intel.com> | 2018-10-23 14:24:17 +0800 |
commit | 6df465b21213ac7c8df78c8db261b064aa6aa56c (patch) | |
tree | 5c2a0e452f193d350e736ce7aec57fabfc5ab931 /MdeModulePkg/Universal/Disk | |
parent | 3b30351b75d70ea65701ac999875fbb81a89a5ca (diff) | |
download | edk2-6df465b21213ac7c8df78c8db261b064aa6aa56c.zip edk2-6df465b21213ac7c8df78c8db261b064aa6aa56c.tar.gz edk2-6df465b21213ac7c8df78c8db261b064aa6aa56c.tar.bz2 |
MdeModulePkg/UdfDxe: Correct behavior for UdfSetPosition()
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=1252
Calling the 'SetPosition' service of the EFI_FILE_PROTOCOL with 'Position'
equals to 0xFFFFFFFFFFFFFFFF for a file is to set the current position to
the end of the file. But the current implementation of function
UdfSetPosition() is to set it to the last byte (not EOF).
This commit will resolve this issue.
Cc: Ruiyu Ni <ruiyu.ni@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Paulo Alcantara <palcantara@suse.de>
Acked-by: Star Zeng <star.zeng@intel.com>
Diffstat (limited to 'MdeModulePkg/Universal/Disk')
-rw-r--r-- | MdeModulePkg/Universal/Disk/UdfDxe/File.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/MdeModulePkg/Universal/Disk/UdfDxe/File.c b/MdeModulePkg/Universal/Disk/UdfDxe/File.c index 4aa0594..45ce5e5 100644 --- a/MdeModulePkg/Universal/Disk/UdfDxe/File.c +++ b/MdeModulePkg/Universal/Disk/UdfDxe/File.c @@ -722,7 +722,7 @@ UdfSetPosition ( // set to the EOF.
//
if (Position == 0xFFFFFFFFFFFFFFFF) {
- PrivFileData->FilePosition = PrivFileData->FileSize - 1;
+ PrivFileData->FilePosition = PrivFileData->FileSize;
} else {
PrivFileData->FilePosition = Position;
}
|