Commit Graph

207 Commits (e51c9119f1ff89a56efd4bb673e1870cef59f7be)

Author SHA1 Message Date
Martin Willers d5cd49b73c fix --stdout-errors handling
When using --stdout-errors, the messages written to stdout contained garbage.

Inside vfprintf(), each va_arg() consumes one entry from the va_args.
Trying to use the same va_args variable again results in undefined behavior
as subsequent va_arg() invocations continue to read from memory past the
actual variable space.

Instead, a copy has to be made with va_copy() and this be used for
outputting to stdout.
2014-05-10 01:22:22 +10:00
Benjamin Dobell ce486f7ecb Removed a few unused variables. 2014-05-07 06:48:00 +10:00
Benjamin Dobell 9b56396ba1 It would seem that messing around with line coding etc. is not necessary. 2014-05-07 00:23:19 +10:00
Benjamin Dobell 9f957a1937 Updated copyright notices to 2014 2014-05-06 22:53:10 +10:00
Benjamin Dobell 32383b994d Merge pull request #168 from r-craig/master
Fix error condition check on finding correct usb interface.
2014-05-06 22:40:04 +10:00
Benjamin Dobell 7d0d608473 Fixed statically linked builds on Windows. 2014-05-06 21:39:08 +10:00
Benjamin Dobell ca6db9a647 Upgraded to libusb-1.0 (1.0.18) post libusbx merge. 2014-05-06 21:39:07 +10:00
Benjamin Dobell a5452e884a Cleaned up command line interface
- Removed the "--delay <ms>" argument.
- Improved Action usage info.
2014-05-06 21:39:07 +10:00
Benjamin Dobell 0767cff624 autogen'd for 1.4.1 2014-05-06 21:39:06 +10:00
Benjamin Dobell 3dae56a596 Bumped version number to 1.4.1 2014-05-06 21:39:06 +10:00
Benjamin Dobell 1e345bcd7c Fix support for SGS4 (with empty bulk transfers)
After each bulk transfer sent containing an Odin/Loke protocol packet, we now
send through a zero length bulk transfer. This is required for newer devices to
function correctly.
2014-05-06 21:39:05 +10:00
Benjamin Dobell a934ad2608 Project file changes (for statically linked vc++ library builds). 2014-05-06 21:39:04 +10:00
Benjamin Dobell 3af0c3ad63 Minor code clean up. 2014-05-06 21:39:04 +10:00
Benjamin Dobell 4435da4a8a Merge pull request #180 from marclaporte/master
fix typos
2014-05-05 02:57:14 +10:00
Benjamin Dobell f7d8c18636 Merge pull request #179 from marclaporte/patch-1
Fix typos
2014-05-05 02:56:16 +10:00
Marc Laporte 0624b2fb3b Fix typo 2014-01-13 17:56:49 -05:00
Marc Laporte 3277922cb6 Fix typo 2014-01-13 17:55:49 -05:00
Marc Laporte cdd53cdb9b Fix typos 2014-01-13 17:48:25 -05:00
Robert Craig 5cd4141c98 Fix error condition check on finding correct usb interface. 2013-11-06 10:00:33 -05:00
Benjamin Dobell f95619028f Merge pull request #131 from jorti/master
Fix udev rules directory
2013-06-26 20:41:24 -07:00
Juan Orti Alcaine e9311908a0 Fix udev rules directory
The udev rules always must be installed in /lib/udev/rules.d even when it is
a 64 bits OS
2013-06-12 09:35:26 +02:00
Benjamin Dobell 910ae1d1fe After swapping to clang for OS X, I've now swapped to GNU GCC 4.7+, instead of Apple's out-dated version. 2013-06-08 18:04:12 +10:00
Benjamin Dobell f47b69d037 Modified Heimdall Frontend so it can find Heimdall CLI in /usr/local/bin on OS X. Also updated the OS X build files, as well as READMEs for all platforms. 2013-06-08 15:07:01 +10:00
Benjamin Dobell b8a92f1c71 Fixed configure/libtool issue on OS X by placing AC_PROG_LIBTOOL after AC_PROG_CXX. 2013-06-06 22:09:36 +10:00
Benjamin Dobell 3d6a35972b Renamed udev rules file and explictly added /usr/include to the include search path for Heimdall Frontend on UNIX systems. 2013-06-04 23:00:55 +10:00
Benjamin Dobell 858a3470e9 Moved LICENSE to root of the repo and deleted heimdall-frontend duplicate documentation in doc-pak. 2013-05-14 00:09:19 +10:00
Benjamin Dobell 9fa0a13022 Minor build file clean-up for linux and regenerated autotools output for 1.4.0 release. 2013-05-13 23:38:33 +10:00
Benjamin Dobell 797fbeea69 Updated zadig (Windows driver installer) to a newer version. 2013-05-13 00:28:24 +10:00
Benjamin Dobell e8b00e6426 Updated copyright in source repo README. 2013-05-13 00:24:03 +10:00
Benjamin Dobell 07dcba54fc Update copyright notices, version identifier and documentation for 1.4.0 release. 2013-05-13 00:08:30 +10:00
Benjamin Dobell 4b089d8084 Fix OS X qmake/environment variable usage in .pro file. 2013-05-13 00:06:44 +10:00
Benjamin Dobell c9e4f764c2 Removed bad Galaxy Camera device identifier, as it was the PID for regular boot, not download mode. 2013-05-11 13:36:05 +10:00
Benjamin Dobell 59cc6133d5 Fixed bug in Heimdall Frontend where "resume" wasn't being checked when it should have been. 2013-05-06 00:01:08 +10:00
Benjamin Dobell f46ef9d47a For devices that support variable packet size - decreased sequence size from 100 MiB to 30 MiB. 2013-05-05 23:59:47 +10:00
Benjamin Dobell 8301663c99 Minor command line output changes - No functional changes. 2013-05-05 20:57:50 +10:00
Benjamin Dobell 55d6c9551e Fixed two major bugs in libpit related functionality:
- Partitions were being excluded from flashing (and UI) if the block-count
  was zero. Instead this is now done using a new IsFlashable() method
  which checks if the partition name is not blank.
- PitData::Pack() was packing the partition name where it should have been
  packing the "flash filename". This resulted in incorrect PIT files being
  flashed to the device.
2013-05-05 20:53:36 +10:00
Benjamin Dobell a653a4800b Changed Arguments.h constructors with default parameters so it compiles with clang. 2013-03-14 00:28:39 +11:00
Benjamin Dobell 973ad82fef Regenerated autoconf files. 2013-03-14 00:18:50 +11:00
Benjamin Dobell e4011af213 Ancient Mac GCC does not support C++11/C++0x. Swapped to using clang on OS X. 2013-03-14 00:09:39 +11:00
Benjamin Dobell f7f29172cb Updated Linux build files and fixed a string formatting warning in Heimdall Frontend. 2013-03-10 02:33:12 +11:00
Benjamin Dobell ef7c9a6377 Fixed output bug attempting to log a std::string instead of a C-style string with printf. 2013-03-10 01:26:22 +11:00
Benjamin Dobell ebbc3e7cd2 - Removed legacy command line hard-coded partition name parameters.
- As a result of the above two points, there are no "known boot
  partitions", and hence boot partitions are not automatically flashed
  last.
- Made partitions flash in the order in order in which partition arguments
  are specified. Hence, it's recommended that you specify boot partitions
  last.
- Added --usb-level argument that can be used for debugging libusbx, or
  flashing issues in general.
- Removed generally non-functional firmware dumping behaviour.
- Removed auto-resume functionality - Although this feature was definitely
  nice to have; I believe it may be responsible for flashing compatibility
  issues for a variety of devices.
- As a result of the above. In order perform another action after a
  --no-reboot action, you must provide the --resume flag.
- Heimdall Frontend also has support for specifying the --resume flag
  via a GUI. Heimdall Frontend also tries to keep track of your actions
  and enable "Resume" automatically after a "No Reboot" action.
- Refactored quite a few of the actions, and code responsible for flashing
  (particularly PIT file flashing).
- Bumped version to 1.4RC3 *however* this commit is not yet an official
  release candidate. It's still a WIP. In particular build files still
  have not been updated for Linux and OS X.
2013-03-08 00:12:27 +11:00
Benjamin Dobell 9d7008e4ba Previous libusbx fix was a red herring of sorts. Inadvertedly it did fix the
issue. However, the correct solution was much simpler:
https://github.com/libusbx/libusbx/pull/80
2013-02-02 01:57:45 +11:00
Benjamin Dobell fec8bbc4db Actually fixed the bug (race condition) in libusbx-1.0 this time! Source
available at https://github.com/libusbx/libusbx/pull/79
2013-02-01 01:39:46 +11:00
Benjamin Dobell 1d2927be56 Added a patched version of libusbx that fixes device claiming on Windows.
Changes to libusbx are documented here:
https://github.com/libusbx/libusbx/issues/78
2013-01-27 02:37:51 +11:00
Benjamin Dobell 8c6b20a487 - Incrementing to 1.4 RC2.
- Fixed Release xcopy command that was referring to libusb instead of
  libusbx.
2013-01-24 00:51:32 +11:00
Benjamin Dobell 5212bf58c5 Added libusbx-1.0 library and DLL missed due to .gitignore 2013-01-24 00:46:30 +11:00
Benjamin Dobell 7caa014dcf Added Galaxy Camera download mode identifier (apparently). 2013-01-23 01:12:58 +11:00
Benjamin Dobell 4d850a272a - Updated MSVC projects to MSVC2012.
- Changed from libusb-1.0 to libusbx.
- Upgraded to C++11 (defined as C++0x for backwards compatibility with gcc < 4.7).
2013-01-23 00:44:12 +11:00
Benjamin Dobell 31b1b0b2b0 - Changed interpretation of packet size reponses of 0 from meaning "don't
care" to "unsupported".
- Changed block size in libpit to mean either block size or block offset.
2013-01-22 23:53:30 +11:00