diff options
author | Tom Cherry <tomcherry@google.com> | 2019-09-17 13:34:04 -0700 |
---|---|---|
committer | Tom Cherry <tomcherry@google.com> | 2019-09-17 13:43:56 -0700 |
commit | fbb9535aaea5ae4011f3c3edf4c00b27452f57ec (patch) | |
tree | b2f2e30ea509c6b1fb35f55b688230688da4b57d /init/service_parser.cpp | |
parent | cf4845b153edf7f3da9ab529b0d74d11a2c24c3f (diff) |
fastboot: don't use sparse_file_import_auto() in load_buf_fd()
load_buf_fd() attempts to find the size of the file that it is about
to load by first calling sparse_file_import_auto() then using
sparse_file_len() upon success or falling back to the file size on the
filesystem on failure.
This is problematic however as sparse_file_import_auto() creates a
sparse_file out of the normal file, but does not resparse it, so an
assertion fails during the sparse_file_len() call.
This is fixed by using sparse_file_import() instead. This will fail
in the case that the file is not sparse and the call to
sparse_file_len() will be properly skipped.
Bug: 140538105
Test: flash blueline factory image with assertions enabled in
libsparse/sparse.cpp
Change-Id: I0283be33563a3301ce5b09bde41105a20f91086c
Diffstat (limited to 'init/service_parser.cpp')
0 files changed, 0 insertions, 0 deletions