Commit Graph

1128 Commits

Author SHA1 Message Date
Pete Batard 7b86943266 [ui] don't report an error on chkdsk failure 2017-05-01 16:40:14 +01:00
Pete Batard 30137de7cb [iso] improve handling of image size
* Don't use the projected size where the actual image size should be used
* Also fix an issue with the projected size computation
2017-05-01 16:22:34 +01:00
Pete Batard 0c76dbf075 [process] restrict search to handles that have R or W access
* Also fix loop overflow
2017-04-30 21:59:18 +01:00
Pete Batard d1927ac1ef [core] handle search improvements
* Fix memory leaks due to not releasing the heap
* Also speed up lookups by not reopening the same process twice in a row
* Also make the usb_debug variable global so we can use uuprintf everywhere
2017-04-29 17:14:16 +01:00
Pete Batard fec0813073 [misc] fix MSVC builds 2017-04-27 23:27:19 +01:00
Pete Batard d5f6ddb653 [core] list potentially blocking processes on disk access error
* Using functionality from Process Hacker:
  https://github.com/processhacker2/processhacker2/
* Part of the #773 enhancement
* Also fix minor MinGW and WDK warnings
2017-04-27 23:06:42 +01:00
Konrad Becker 27bc4cb02b [loc] fixed two German spelling errors
* One missing and one surplus character.
2017-04-26 00:07:58 +01:00
Pete Batard 55b7d5c2da [misc] code cleanup
* Also fix WDK compilation issues
2017-04-25 20:25:50 +01:00
Pete Batard afec69c428 [ui] improve logging data
* Display the selected locate as well as LGP info in the log
* Also fix some potential Coverity warnings
2017-04-25 14:32:19 +01:00
Pete Batard 3924d2847d [misc] add build data for Windows Apps Store
* Rather useless, since elevated apps are neither accepted by Microsoft nor
  will they run by default when sideloaded. But, hey, I can has apps!
* Also update sign and sed scripts
2017-04-20 12:59:46 +01:00
Pete Batard aec2736245 [togo] improve Windows To Go support for Windows 10 Creators Update
* Enable the use of GPT on REMOVABLE drives, if the host is Windows 10 CU
* Don't display the message about REMOVABLE boot, if the target is Windows 10 CU
2017-04-19 11:30:24 +01:00
Pete Batard fff4465b1d [core] improve Unicode support
* Microsoft's version of _wgetenv() is *BROKEN*!
* Also set rufus-next to 2.15
2017-04-19 11:16:20 +01:00
Pete Batard e2481efcd9 [pki] application security improvements
* Also clean up registry variables and add IsRegistryNode() call
2017-04-12 20:40:43 +01:00
Pete Batard caa9b06426 [core] work around Windows 10 CU potentially selecting the UEFI:NTFS partition for formatting
* Should only happen with Windows 10 Creator Update (1703)
* Closes #931
* Also silence the flow of bcdboot benign errors on WinToGo creation (unless USB Debug is enabled)
* Also ensure WaitForLogical() will not actually spends 15 seconds max before giving up
2017-04-11 22:15:05 +01:00
Pete Batard 42e8d714e8 v2.14 (build 1086) 2017-04-10 11:20:08 +01:00
Pete Batard 854620d0ba [core] relax the rule for exclusive write access
* If we can't get a write handle for more than 5 seconds, retry with FILE_SHARE_WRITE
* This is a partial revert of 2f81e4f177, in order to address #924.
2017-04-09 21:08:34 +01:00
Pete Batard 2417ea7409 [misc] update Rufus URLs to https
* Also set rufus-next to 2.14
2017-04-09 21:00:02 +01:00
Pete Batard 477ff95f93 [core] display device paths in GetHandle()
* Also reorder bLockDrive and bWriteAccess parameters
2017-04-08 21:58:10 +01:00
Pete Batard eb57d116cc [misc] update Visual Studio references in README 2017-04-06 13:44:41 +01:00
Pete Batard 4670cfaf35 v2.13 (build 1081) 2017-04-06 11:50:31 +01:00
Pete Batard cbd31af448 [grub] update GRUB to 2.02~rc2 2017-04-05 11:12:58 +01:00
Pete Batard be1bdb7c85 [misc] miscellaneous cleanup
* Also add CreateWindowExU() method
* Also add the 'DisableFileIndexing' to the ini template
2017-04-04 17:26:45 +01:00
Pete Batard da7a5bb30d [iso] revert overzealous filename sanitization
* slash and backslash must be kept, as we are sanitizing paths
2017-04-02 14:51:37 +01:00
Pete Batard e33b4589b6 [misc] small improvements for 2.13 release 2017-04-01 17:32:15 +01:00
Pete Batard abce1a2aa0 [ui] prefer GPT if the user switched to it before ISO selection
* This should help with the myriad of people not noticing that
  this setting was reset after selecting an ISO.
2017-03-30 12:07:49 +01:00
Mayuso 893a2e63d7 [loc] more Spanish translation fixes
* Closes #915
2017-03-17 15:03:31 +01:00
Darío Hereñú 1c5ff3dd7c [loc] fix Spanish translation
* Closes #914
2017-03-16 21:20:59 +01:00
Pete Batard ee67019129 [misc] add .editorconfig
* Also update getopt project file to remove missing file
2017-03-14 18:44:14 +01:00
Sopor 5f679edf4d [loc] update Swedish translation 2017-03-13 11:32:19 +01:00
Pete Batard edcfd43ed5 [misc] fix multiple VS Code Analysis warnings 2017-03-10 19:07:48 +01:00
Pete Batard 97b4e623cd [iso] update libcdio to latest
* Also update .gitignore for VS2017 files
2017-03-09 15:34:37 +01:00
Pete Batard 8a491e9877 [misc] update Clang solution for VS2017 2017-03-09 12:37:53 +01:00
Pete Batard a51d17742b [internal] update coverity script 2017-03-09 12:10:47 +01:00
Pete Batard 21ce17302d [misc] fix coverity and VS analysis warnings 2017-03-08 21:22:24 +01:00
Pete Batard c021b7bfd8 [core] fix Microsoft's inconsistent casing for device IDs
* Microsoft inconsistently lists similar Device IDs with either upper or
  lower case values. e.g. USB\VID_1908&PID_0226\5&23CE17BD&0&3 vs.
  USB\VID_1908&PID_0226\5&23ce17bd&0&3
* Of course this creates issues when using a case sensitive hash table...
* We now convert all Device IDs to uppercase before hashing them.
2017-02-20 12:26:06 +00:00
Wang JiaWei 659f2fae34 [loc] update Simplified Chinese translation to latest
* Also fix a typo
* Closes #905
2017-02-17 11:54:15 +00:00
Pete Batard 136fd7a37e [syslinux] fix non release of the volume handle with NTFS
* Closes #904
2017-02-17 11:05:49 +00:00
Pete Batard 2f81e4f177 [core] avoid the use of FILE_SHARE_WRITE
* Not having FILE_SHARE_WRITE on a disk or volume handle helps
  prevent spurious accesses from the OS or other apps while we
  are repartitioning/refomatting.
2017-02-16 14:13:30 +00:00
Na Jiyoun c877284d2a [loc] update Korean translation to latest 2017-02-15 12:16:02 +00:00
Pete Batard 1e7299afa2 [misc] set rufus-next to 2.13 2017-02-15 12:14:32 +00:00
Pete Batard c72aa7be0a [core] don't clean up partition data before writing a disk image
* This workaround seems to be needed for the upcoming Windows 10 rs2_release (see #883)
* Also some minor fixes
* Closes #883
2017-02-14 12:44:25 +00:00
Pete Batard f7b839c596 [ui] fix restore when a dialogbox is displayed while the main window is minimized
* Closes #896
2017-02-06 12:08:11 +00:00
Pete Batard 54004f7f6c [enum] fix default listing for Toshiba TransMemory UFDs 2017-01-31 11:37:25 +00:00
Pete Batard 4373f0c452 [ui] fix notification sound when closing using X
* Closes #893
2017-01-30 17:52:37 +00:00
Tiryoh e7148c97b5 [loc] update Japanese translation to latest 2017-01-28 23:53:10 +00:00
Ivan Strugar a970e572d2 [loc] update Serbian (Latin) translation to latest 2017-01-27 21:47:48 +00:00
Pete Batard b1ce0cfeeb v2.12 (build 1054) 2017-01-27 20:40:40 +00:00
Gintaras Venslovas 1ee61d5fe5 [loc] update Lithuanian translation to latest 2017-01-27 15:46:16 +00:00
Nikolaos Margaritis 0ed4e7947a [loc] update Greek translation to latest 2017-01-27 13:51:03 +00:00
Piotr Halama d722ad6dda [loc] update Polish translation to latest 2017-01-27 13:47:07 +00:00
Aldis Tutins a75133cbd1 [loc] update Latvian translation to latest 2017-01-27 10:57:39 +00:00
MaKK b72de29b5e [loc] fix a typo in the Spanish translation 2017-01-27 10:55:13 +00:00
Roberto Pino f8e39471fb [loc] update Dutch translation to latest 2017-01-26 12:14:10 +00:00
MaKK 933193ded9 [loc] update Spanish translation to latest 2017-01-25 18:20:02 +00:00
Dario Komar 064fffa6f6 [loc] update Croatian translation 2017-01-24 22:31:47 +00:00
Matej Horvat 269bc569a9 [loc] update Slovenian translation to latest 2017-01-24 18:49:06 +00:00
Кирилл Иванов 90f564cc53 [loc] update Russian translation to latest 2017-01-23 11:20:17 +00:00
Krasimir Newenow 9f05d5d1e6 [loc] update Bulgarian translation to latest
* Also remove trailing whitespaces
2017-01-21 16:25:07 +00:00
Elvin Məlikov 789b8caf51 [loc] update Azerbaijani translation to latest 2017-01-20 10:42:56 +00:00
Gîrlea Alexandru eb0890de08 [loc] update Romanian translation to latest 2017-01-19 20:07:47 +00:00
Riku Brander ccdc1f2115 [loc] update Finish translation to latest 2017-01-19 15:43:13 +00:00
Sippapas Wangsri 43b260b617 [loc] update Thai translation to latest
* Also fix a small typo in Hebrew translation (with thanks to pinim)
2017-01-19 15:42:24 +00:00
Константин В 4dc7653a57 [loc] update Ukrainian translation to latest 2017-01-18 19:28:19 +00:00
Martin Kubánik 8df177f561 [loc] update Slovak translation to latest 2017-01-18 19:26:16 +00:00
Pete Batard db234442e3 [ui] improve selection dialog when there exist more than 6 options
* Closes #891
2017-01-18 13:48:44 +00:00
thanhtai2009 371b1b4d94 [loc] update Vietnamese translation to latest 2017-01-18 13:09:32 +00:00
Zia Azimi e1e7d88d38 [loc] update Persian translation to latest 2017-01-17 23:56:39 +00:00
Sopor 59cb5f227c [loc] update Swedish translation to latest 2017-01-17 15:52:31 +00:00
Noam Sarusi 7a00adcf5d [loc] update Hebrew translation to latest
* Closes #890
2017-01-17 15:46:12 +00:00
Chocobo1 34b3feb3a8 [loc] update Traditional Chinese translation to latest
* Closes #889
2017-01-17 13:12:35 +00:00
Jan-Erik Drangevåg 3db181c202 [loc] update Norwegian translation to latest 2017-01-17 12:29:14 +00:00
Mehmetali Kuran d1e6457269 [loc] update Turkish translation to latest 2017-01-17 12:27:18 +00:00
Thilo Langbein 1e3549df9a [loc] update German translation to latest 2017-01-17 12:25:20 +00:00
Dinis Medeiros c5527f0784 [loc] update Portuguese (Standard) translation to latest 2017-01-17 12:20:24 +00:00
Roberto Boriotti d4756303ce [loc] update Italian translation to latest 2017-01-17 12:18:21 +00:00
Richard Kahl 06f7602c8a [loc] update Czech translation 2017-01-17 12:13:47 +00:00
Tiago Rinaldi 1757481f2e [loc] update Portuguese Brazilian translation to latest 2017-01-17 12:07:40 +00:00
Pete Batard 9f1f164aff [dev] adjust score for Alcor based UFDs
* Closes #888
2017-01-17 12:04:18 +00:00
Pete Batard 0d45bae5e5 [loc] commit latest localization updates 2017-01-16 18:02:22 +00:00
Pete Batard 8626ca949e [grub] update Grub4DOS to latest
* Also update the SHA256 DB
2017-01-13 11:12:57 +00:00
Pete Batard ee453b0088 [dos] update FreeDOS
* Also capitalize some files to match the FreeDOS archives.
2017-01-13 11:10:52 +00:00
Pete Batard fd093127d2 [enum] add workaround for the lousy ASMedia USB 3.0 stack
* This occurs on Windows 7 with the ASMedia proprietary USB 3.0
  controller drivers.
2017-01-12 11:47:28 +00:00
Pete Batard e62ab37e38 [bled] improve error reporting
* Also make the use of a FIXED drive more noticeable in the log
2017-01-11 01:12:00 +00:00
Pete Batard 8aeaa4d645 [grub] add fallback to same major version 2017-01-06 16:15:31 +00:00
Pete Batard 08b6ce38c2 [core] fix a potential Could not get Disk Extents message
* Reported in #880
2017-01-05 15:42:24 +00:00
Pete Batard 5170706695 [misc] fix coverity warnings 2017-01-04 18:07:58 +00:00
Pete Batard d7e977e1f1 [core] enable FAT32 for Windows install when dual UEFI+BIOS is enabled 2017-01-03 16:56:30 +00:00
Pete Batard 5b544c6a4a [misc] update copyright year 2017-01-01 15:30:03 +00:00
Tiago Rinaldi 0cb8aff561 [loc] fix typos in Portuguese Brazilian translation
# Closes #879
2017-01-01 15:24:00 +00:00
Pete Batard d783573178 [syslinux] enable NTFS selection for Syslinux 6.x or later
* Tested with latest Arch, Debian and Ubuntu
2016-12-15 16:28:00 +00:00
Pete Batard f4ebe1b6c2 [togo] prompt user to select a version before formatting 2016-12-15 12:04:19 +00:00
Pete Batard 104b33a7ba [core] remove 'MBR for BIOS' option for pure UEFI images
* Closes #832
* Also refactor image property macros
2016-12-14 23:27:41 +00:00
Pete Batard 7d302d340f [togo] enable selection of Windows version
* Closes #847
* Also set rufus-next to 2.12
2016-12-13 14:26:27 +00:00
Pete Batard 5113be0a39 [iso] add dumping of ISOs from optical media (Alt-O) 2016-12-06 11:47:19 +00:00
פלוני אלמוני abead192d3 [loc] complete Hebrew translation
* Closes #204
2016-12-05 11:21:46 +00:00
Noam Sarusi 18607a623b [loc] add Hebrew translation (incomplete) 2016-12-05 11:04:58 +00:00
Pete Batard 4891500f40 [loc] fix license display for RTL languages 2016-12-05 10:52:37 +00:00
Pete Batard 8128d34e35 [bb] fix rand() initialization
* What do you know, srand() is thread-local...
2016-11-29 11:02:02 +00:00
Pete Batard cbf01071ab [misc] add an indication in the log for portable mode
* Closes #854
2016-11-14 11:29:54 +00:00
Adrian Perez de Castro 03e01f2a19 [misc] Linux cross compilation fixes
* Closes #850
2016-11-11 11:58:05 +00:00
Pete Batard 73b39c1fb4 [internal] update issue template 2016-11-11 10:59:18 +00:00
Martin Schiel e427800895 [loc] fix a typo in German translation 2016-11-04 11:30:09 +01:00
Aldis Tutins 098dff5b74 [loc] update Latvian translation 2016-10-03 11:41:44 +01:00
Robert McQueen 234b0a3fde [ms-sys] fix for detecting windows MBRs with localised messages
* Windows MBRs contain localised strings which mean the bytes between the
  executable code and the disk signature / partition table can change depending
  on locale. This patch adds lengths to reflect the offsets which are the same
  for every locale, and only compares these lengths when detecting existing
  Windows MBRs.
2016-09-21 17:37:16 +01:00
Daniel Peukert c4b9ec4a62 [loc] fix two strings in the Czech translation
* Closes #827
2016-09-12 09:42:20 +01:00
Pete Batard b3c76b1f61 v2.11 (build 995) 2016-09-08 17:33:41 +01:00
Pete Batard aa4baab194 [core] add a workaround for >1TB HDDs that mistakenly report short writes
* It appears that 1.5TB and 2TB HDDs, accessed trough some Seagate ow WD USB ↔ SATA
  controllers, can report that 0 bytes were written on WriteFile(), even though all
  the data was effectively written. 1TB HDDs, accessed through the same controller,
  do not report this issue. So add a workaround for that.
* Also see #787
2016-09-06 18:31:30 +01:00
Pete Batard 8ca644de5a [core] fix sanitizing of exFAT labels
* Closes #818
2016-08-31 13:01:39 +01:00
Pete Batard 08566fa127 [core] add half workaround for an XP issue
* This is not a complete workaround, but it will do for
  until we drop support for XP altogether.
* Closes #810
2016-08-31 12:21:10 +01:00
Pete Batard 9872cad1e8 [appveyor] remove unneeded project duplication for MinGW 2016-08-30 12:10:08 +01:00
Pete Batard cc758f58a0 [ui] fix UI font for XP users
* DIE, XP, DIE!!!!
* Closes #820
2016-08-29 18:17:43 +01:00
Pete Batard 5d3be6ca51 [misc] add a cheat mode to disable file indexing after format
* New cheat mode is Alt-Q, and gets preserved between sessions
* Only for file systems that support it (NTFS, UDF and ReFS)
2016-08-27 18:06:06 +01:00
Pete Batard d9a928f5bc [core] fix handling of BFD drives
* A BFD (Big Floppy Disk) is a disk that isn't actually partitioned,
  but where the first data sector starts at sector 0
* Closes #814
2016-08-21 14:06:15 +02:00
Pete Batard 2b0cc9349f [misc] fix a couple code analysis warnings 2016-08-20 10:15:48 +02:00
Pete Batard ce6ded2111 [iso] add label update workaround for ArchLinux derivatives 2016-08-14 15:45:29 +02:00
pluto00987 ce8fbd9934 [misc] align ms-sys source with upstream
* This adds the (currently unused) fat32pe boot records
* Closes #801
2016-08-11 17:05:39 +02:00
Pete Batard 6d3b1c856f [iso] prevent usage of FAT32 for WinPE4 ISOs
* This is part of #801
2016-08-10 18:59:35 +02:00
Pete Batard ab44cde7ac [misc] don't download BIOS-related files if selected target isn't BIOS
* Part of #799
* Also set rufus-next to 2.11
2016-08-08 13:46:50 +02:00
Pete Batard e7578bc12d [syslinux] support ISOs that use boot.bin instead of isolinux.bin
* Such as WebConverger (webc-35.1.iso)
* Also fix non installation of Syslinux if Alt-E (dual UEFI/BIOS) is set
* Also update README and AppVeyor script
2016-08-07 18:41:47 +02:00
Pete Batard 19536ddd1a [appveyor] this versioning sure isn't intuitive... 2016-08-06 19:04:34 +02:00
Pete Batard b808b67769 [appveyor] match AppVeyor version with git tag or SHA-1
* Also add a GPLv3 badge
2016-08-06 19:01:05 +02:00
Pete Batard 6a4cc1acb5 [appveyor] fix AppVeyor script
* This should build for all of the VS2015 targets as well as MinGW32 + MinGW-w64
2016-08-06 00:00:08 +02:00
Pete Batard 1e9aa1e646 [appveyor] try without an explicit SDK setup call for x86_64 2016-08-05 21:11:32 +02:00
Pete Batard 3c0c1b7e9a [misc] and now we try for fix AppVeyor... 2016-08-05 18:01:46 +02:00
Pete Batard a1f433b1b4 [misc] add AppVeyor CI support 2016-08-05 17:30:49 +02:00
Pete Batard 09482d53fe [iso] fix a libcdio log message 2016-07-31 18:23:50 +02:00
Pete Batard b204065f88 [clang] use the July Clang/C2 framework VS2015 update 2016-07-21 15:58:11 +01:00
Pete Batard b32c7149eb v2.10 (build 973)
* Also fix an indentation warning from gcc 6.1
2016-07-20 10:51:08 +01:00
Pete Batard dcb0d561d5 [uefi] update UEFI:NTFS and add support for compressed NTFS partitions
* UEFI:NTFS now uses the latest efifs drivers, with NTFS compression supported
* Because the executables are now compiled with Clang, we can also revert to a 256KB partition
2016-07-18 13:25:49 +01:00
Pete Batard 56eb635879 [internal] use smart card keys for code signing
* Also fix a Coverity warning
2016-07-15 13:32:22 +01:00
Pete Batard cee50bd189 [grub] update Grub4DOS 0.4.6a to latest
* Also update Changelog
2016-07-10 21:51:46 +01:00
Pete Batard 9dd06e93bc [ui] improve Windows format prompt autoclose
* Closes #794
* Also reorder some messages (so that RUFUS_TEST comes first)
* Also update issue template
2016-07-09 16:20:58 +01:00
Pete Batard cebfa4cc7a [ui] delay hotplug event when the user has pressed Start
* Closes #793
* Also update issue template
2016-07-08 12:09:46 +01:00
Pete Batard 91eec034b1 [core] try not to clear MBR/GPT sectors higher than the lowest partition
* This ensures that a drive can be reformatted without error after writing
  an image such as super_grub2_disk_x86_64_efi_2.02s4.iso
2016-07-07 18:13:01 +01:00
Pete Batard 2f88286dc1 [misc] update issue template 2016-07-06 11:25:38 +01:00
Pete Batard 473e7467e8 [misc] add issue template 2016-07-05 16:18:09 +01:00
Pete Batard a207d967a5 [uefi] add support for EBC boot loader
* Closes #791
2016-07-04 13:16:04 +01:00
Pete Batard ed1b3fd72e [iso] reload label after formatting
* 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()
2016-06-26 22:24:16 +02:00
Na Jiyoun 60517f1e50 [loc] update Korean translation to latest 2016-06-25 11:35:43 +02:00
Pete Batard 4f3e27b089 [syslinux] try to match version detection with the config directory 2016-06-19 23:33:00 +02:00
Pete Batard d3f7e1c1aa [grub] limit GRUB2 support to BIOS/x86
* EFI should take care of itself and this will avoid benign warnings
  such as the ones produces by the latest Ubuntu
2016-06-17 16:14:54 +02:00
Pete Batard d85a4e4307 [efi] ensure that the UEFI:NTFS partition is properly sized 2016-06-16 18:29:15 +02:00
Pete Batard e76f60a3e8 [misc] use the more univerasal _mm_alloc() instead of _aligned_malloc()
* Also ensure that our buffers are aligned
* Also remove the use of static buffers in ms-sys
2016-06-10 12:42:43 +01:00
Pete Batard 3fdf622933 [syslinux] fix Syslinux installation for some media
* 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
2016-06-09 17:49:58 +01:00
Pete Batard c0393aec08 [misc] add a few more missing calloc checks
* Also use the relevant macro in msapi_utf8.h
2016-06-08 16:32:31 +01:00
Pete Batard a10ea1498b [misc] add more check for malloc() errors
* Closes #772
* With thanks to @elfring
2016-06-07 19:47:01 +01:00
Pete Batard f1f620411c [syslinux] use SetFilePointerEx and other improvements 2016-06-06 19:39:53 +01:00
Pete Batard f31a90bba2 [enum] add support for O2Micro PCI-E card readers
* Part of #767
2016-06-06 00:36:56 +01:00
Pete Batard 66534640a4 [enum] use Unicode when retrieving the device friendly name
* This should fix the improper display of some localized strings such as
  "Microsoft Virtual Disk"
2016-06-05 20:21:16 +01:00
Pete Batard de386329e4 [clang] fix breakage when opening ISO9660 images
* Even in MS compatibility mode, clang needs to be told how to pack structs
* Also fix a compilation warning with Link Time Code Generation
2016-06-04 22:09:25 +01:00