* The Windows APIs may further modify the label compared to our proposed
version (e.g. remove trailing spaces), and we need an exact label for
the Syslinux/GRUB config file update.
* This issue was reported against Springdale Linux, where the isolinux.cfg
label was patched using 'SPRINGDALE\x20' instead of 'SPRINGDALE'
* Closes#784
* Also ensure that we don't replace NULL buffers in msapi_utf8.h and add
GetVolumeInformationU()
* Some disk devices, such as O2Micro PCI-E SD card readers, return ERROR_INVALID_PARAMETER
when attempting to use ReadFile() on a volume against a non 8-byte aligned buffer.
* This patch ensures that the Syslinux buffers for sector patching are 16-byte aligned.
* HUGE THANKS to 424778940z, for the numerous testing that allowed to troubleshoot this issue.
* Closes#767
* Also fix an issue with the translation for MSG_031
* Thanks go to choleraehyq for spotting the issue and 424778940z for providing the new translations
* Closes#766
* Tooltips can only be manipulated from the same thread as the one that created their parent
* Also increase the SetLGP() timeout as this seems to be problematic
* Closes#764
* Since, despite what Microsoft states, having 'requireAdministrator' in a manifest STILL isn't
enough to prevent an app from launching as non elevated for some weird account configurations...
* Closes#757
* Downloadable content will now be indicating, in the log, whether it can be trusted with ✓ (validated) or ✗ (caution)
* Of course this validation only applies for files we know of, i.e. the downloadable content that existed at the time the DB was
created. So, if Syslinux 8.x gets released tomorrow and we put it on our server, you'll get an ✗ regardless of its integrity.
* Closes#758
* The root of the issue is that Windows IOCTL_DISK_CREATE_DISK does not properly
zero all of the MBR/GPT/PBR structure with PARTITION_STYLE_RAW (which is what
diskpart uses to clean a disk), and leaves plenty of partition artefacts behind.
* This means that, when an image with complex partitioning has been applied, such
as Chromium/ChromeOS, you may end up with a drive that can not be repartitioned
or reformatted in Windows (and this is completely independent of whether Rufus
was used to perform these operations - For instance you will get the same issue
if you use Win32DiskImager and diskpart + clean).
* The only option left for users then is to reset/repartition their drives in Linux
or some other OS, as Windows' VDS becomes incapacitated to handle the drive, as
the problem persists independently of reset/re-plug/Windows platform being used.
* To work around this, we ensure that we zero the MBR/GPT/PBR sectors BEFORE calling
IOCTL_DISK_CREATE_DISK.
* Also move zeroing of the drive before partition reset.
* Closes#759