[iso] fix improper size being returned by ExtractISOFile()

* The call returned the size occupied in blocks rather than the actual file size,
  leading to issues such as Rufus not being able to identify the GRUB version used
  by Ubuntu 24.04.
This commit is contained in:
Pete Batard 2024-04-26 21:54:43 +01:00
parent 6ac2dfb0df
commit 4ec57dc5d7
No known key found for this signature in database
GPG Key ID: 38E0CF5E69EDD671
2 changed files with 9 additions and 9 deletions

View File

@ -1482,8 +1482,8 @@ int64_t ExtractISOFile(const char* iso, const char* iso_file, const char* dest_f
uprintf(" Error writing file %s: %s", dest_file, WindowsErrorString()); uprintf(" Error writing file %s: %s", dest_file, WindowsErrorString());
goto out; goto out;
} }
file_length -= read_size; file_length -= buf_size;
r += read_size; r += buf_size;
} }
goto out; goto out;
@ -1515,8 +1515,8 @@ try_iso:
uprintf(" Error writing file %s: %s", dest_file, WindowsErrorString()); uprintf(" Error writing file %s: %s", dest_file, WindowsErrorString());
goto out; goto out;
} }
file_length -= ISO_BLOCKSIZE; file_length -= buf_size;
r += ISO_BLOCKSIZE; r += buf_size;
} }
out: out:

View File

@ -33,7 +33,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
IDD_DIALOG DIALOGEX 12, 12, 232, 326 IDD_DIALOG DIALOGEX 12, 12, 232, 326
STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_ACCEPTFILES EXSTYLE WS_EX_ACCEPTFILES
CAPTION "Rufus 4.5.2144" CAPTION "Rufus 4.5.2145"
FONT 9, "Segoe UI Symbol", 400, 0, 0x0 FONT 9, "Segoe UI Symbol", 400, 0, 0x0
BEGIN BEGIN
LTEXT "Drive Properties",IDS_DRIVE_PROPERTIES_TXT,8,6,53,12,NOT WS_GROUP LTEXT "Drive Properties",IDS_DRIVE_PROPERTIES_TXT,8,6,53,12,NOT WS_GROUP
@ -397,8 +397,8 @@ END
// //
VS_VERSION_INFO VERSIONINFO VS_VERSION_INFO VERSIONINFO
FILEVERSION 4,5,2144,0 FILEVERSION 4,5,2145,0
PRODUCTVERSION 4,5,2144,0 PRODUCTVERSION 4,5,2145,0
FILEFLAGSMASK 0x3fL FILEFLAGSMASK 0x3fL
#ifdef _DEBUG #ifdef _DEBUG
FILEFLAGS 0x1L FILEFLAGS 0x1L
@ -416,13 +416,13 @@ BEGIN
VALUE "Comments", "https://rufus.ie" VALUE "Comments", "https://rufus.ie"
VALUE "CompanyName", "Akeo Consulting" VALUE "CompanyName", "Akeo Consulting"
VALUE "FileDescription", "Rufus" VALUE "FileDescription", "Rufus"
VALUE "FileVersion", "4.5.2144" VALUE "FileVersion", "4.5.2145"
VALUE "InternalName", "Rufus" VALUE "InternalName", "Rufus"
VALUE "LegalCopyright", "<22> 2011-2024 Pete Batard (GPL v3)" VALUE "LegalCopyright", "<22> 2011-2024 Pete Batard (GPL v3)"
VALUE "LegalTrademarks", "https://www.gnu.org/licenses/gpl-3.0.html" VALUE "LegalTrademarks", "https://www.gnu.org/licenses/gpl-3.0.html"
VALUE "OriginalFilename", "rufus-4.5.exe" VALUE "OriginalFilename", "rufus-4.5.exe"
VALUE "ProductName", "Rufus" VALUE "ProductName", "Rufus"
VALUE "ProductVersion", "4.5.2144" VALUE "ProductVersion", "4.5.2145"
END END
END END
BLOCK "VarFileInfo" BLOCK "VarFileInfo"