Commit Graph

5483 Commits

Author SHA1 Message Date
Tao Bao 353e1d629b Merge "applypatch: Fix a memory leak in ApplyImagePatch()." am: 1bc0117755 am: dcc1fa1ce8
am: 47433f0293

Change-Id: I1c1dcdd595e95de50a30d87fbe0623796d9c70f6
2017-10-24 22:11:49 +00:00
Tao Bao 47433f0293 Merge "applypatch: Fix a memory leak in ApplyImagePatch()." am: 1bc0117755
am: dcc1fa1ce8

Change-Id: I183a39998dedb826db0c87bce6febf5a03261d7f
2017-10-24 22:09:21 +00:00
Tao Bao dcc1fa1ce8 Merge "applypatch: Fix a memory leak in ApplyImagePatch()."
am: 1bc0117755

Change-Id: Ifb081da2cbc7175454bb4059e41bb9c94d9b6512
2017-10-24 22:06:47 +00:00
Treehugger Robot 1bc0117755 Merge "applypatch: Fix a memory leak in ApplyImagePatch()." 2017-10-24 21:59:26 +00:00
Tao Bao fdec103335 applypatch: Fix a memory leak in ApplyImagePatch().
$ valgrind --leak-check=full out/host/linux-x86/nativetest64/recovery_host_test/recovery_host_test

==36755== 112 bytes in 1 blocks are definitely lost in loss record 4 of 16
==36755==    at 0x40307C4: malloc (valgrind/coregrind/m_replacemalloc/vg_replace_malloc.c:270)
==36755==    by 0x40C1669: operator new(unsigned long) (external/libcxxabi/src/cxa_new_delete.cpp:46)
==36755==    by 0x18D6A8: ApplyImagePatch(unsigned char const*, unsigned long, Value const*, std::__1::function<unsigned long (unsigned char const*, unsigned long)>, sha_state_st*, Value const*) (bootable/recovery/applypatch/imgpatch.cpp:62)
==36755==    by 0x18D02B: ApplyImagePatch(unsigned char const*, unsigned long, unsigned char const*, unsigned long, std::__1::function<unsigned long (unsigned char const*, unsigned long)>) (bootable/recovery/applypatch/imgpatch.cpp:134)
==36755==    by 0x160D15: GenerateTarget(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*) (bootable/recovery/tests/component/imgdiff_test.cpp:85)
==36755==    by 0x11FA7D: verify_patched_image(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) (bootable/recovery/tests/component/imgdiff_test.cpp:96)
==36755==    by 0x12966C: ImgdiffTest_zip_mode_smoke_trailer_zeros_Test::TestBody() (bootable/recovery/tests/component/imgdiff_test.cpp:295)
==36755==    by 0x235EF9: testing::Test::Run() (external/googletest/googletest/src/gtest.cc:2455)
==36755==    by 0x236CBF: testing::TestInfo::Run() (external/googletest/googletest/src/gtest.cc:2653)
==36755==    by 0x2372D6: testing::TestCase::Run() (external/googletest/googletest/src/gtest.cc:2771)
==36755==    by 0x23EEE6: testing::internal::UnitTestImpl::RunAllTests() (external/googletest/googletest/src/gtest.cc:4648)
==36755==    by 0x23EB45: testing::UnitTest::Run() (external/googletest/googletest/src/gtest.cc:2455)

std::unique_ptr<z_stream, decltype(&deflateEnd)> strm(new z_stream(), deflateEnd);

Only the internally allocated buffers inside 'strm' would be free'd by
deflateEnd(), but not 'strm' itself.

This CL fixes the issue by moving 'strm' to stack variable. Note that we
only need to call deflateEnd() on successful return of deflateInit2().

Test: recovery_host_test && recovery_component_test
Change-Id: I39b9bdf62376b8029f95cab82c8542bfcb874009
2017-10-24 12:48:36 -07:00
Alex Deymo 68146a0515 Merge "Use SuffixArrayIndexInterface opaque type instead of the underlying data pointer." am: 3d24b7bca6 am: d8ecad7896
am: 9d079c1254

Change-Id: I046628fef4ad251516848c4d85aecdd51edf8eff
2017-10-24 17:37:00 +00:00
Alex Deymo 9d079c1254 Merge "Use SuffixArrayIndexInterface opaque type instead of the underlying data pointer." am: 3d24b7bca6
am: d8ecad7896

Change-Id: Ic6065205cca6bff453de6a6683ce82c2d314c7ac
2017-10-24 17:32:01 +00:00
Alex Deymo d8ecad7896 Merge "Use SuffixArrayIndexInterface opaque type instead of the underlying data pointer."
am: 3d24b7bca6

Change-Id: I18b7e9ca9ae299b8a028da63fc7d3e9e9eaef221
2017-10-24 17:29:30 +00:00
Treehugger Robot 3d24b7bca6 Merge "Use SuffixArrayIndexInterface opaque type instead of the underlying data pointer." 2017-10-24 17:20:14 +00:00
Alex Deymo fa188268e4 Use SuffixArrayIndexInterface opaque type instead of the underlying data pointer.
bsdiff interface is changing such that it hides the suffix array
pointer from the public interface. This allows to use a different
suffix array data size depending on the input size, running much faster
in the normal case.

Bug: 34220646
Test: `make checkbuild`; Ran an incremental update generation on a non-A/B device.
Change-Id: I78e766da56cf28bc7774b8c8e58527bc11d919fb
2017-10-24 14:00:31 +02:00
Dan Willemsen 6e9ee37527 Merge "libdrm_platform is now libdrm" am: d830858952 am: 3b4e2ebf2c
am: 404051ef0e

Change-Id: If77faf0558bde6ad80070acd776e1b16709bee2b
2017-10-23 21:43:50 +00:00
Dan Willemsen 404051ef0e Merge "libdrm_platform is now libdrm" am: d830858952
am: 3b4e2ebf2c

Change-Id: I4199c9f74bec5783c54a9d387e7d376595fb0d72
2017-10-23 21:40:51 +00:00
Dan Willemsen 3b4e2ebf2c Merge "libdrm_platform is now libdrm"
am: d830858952

Change-Id: I9614430880626ca25b9eced39ed83eb69073b3b5
2017-10-23 21:36:58 +00:00
Treehugger Robot d830858952 Merge "libdrm_platform is now libdrm" 2017-10-23 21:25:17 +00:00
Dan Willemsen ff7c618fd3 Merge "Build libminui with BOARD_VNDK_VERSION" am: ec9ac55949 am: 0bda7a02c2 am: 988b21ec05 -s ours
am: 7570e73a92  -s ours

Change-Id: I60e5b1dfbd23cd749a22ef8dc3e0b5a4f39db1f9
2017-10-21 00:22:06 +00:00
Dan Willemsen 7570e73a92 Merge "Build libminui with BOARD_VNDK_VERSION" am: ec9ac55949 am: 0bda7a02c2
am: 988b21ec05  -s ours

Change-Id: I720bebaf6712d7e3666fbedfb6be28848bdb3a45
2017-10-21 00:20:04 +00:00
Dan Willemsen 988b21ec05 Merge "Build libminui with BOARD_VNDK_VERSION" am: ec9ac55949
am: 0bda7a02c2

Change-Id: Id9b132f4bfb3011823b86f9f5bb0c4b654f8c87c
2017-10-21 00:18:09 +00:00
Dan Willemsen 0bda7a02c2 Merge "Build libminui with BOARD_VNDK_VERSION"
am: ec9ac55949

Change-Id: I18d3e50975bbff077cb435b798a71cf2384d5ba6
2017-10-21 00:16:05 +00:00
Dan Willemsen ec9ac55949 Merge "Build libminui with BOARD_VNDK_VERSION" 2017-10-21 00:08:23 +00:00
Tianjie Xu 490a10b818 Merge "Finish the new data receiver when update fails" am: 9831ef389b am: 85fca1fc57 am: 4609778204
am: f12aebda91

Change-Id: Iff9efe919a6657d1c7eed083c8708a958ab997b0
2017-10-20 23:13:54 +00:00
Tianjie Xu f12aebda91 Merge "Finish the new data receiver when update fails" am: 9831ef389b am: 85fca1fc57
am: 4609778204

Change-Id: I2b82e90d2adc859fa6781c7ff82dcfed1bd15b91
2017-10-20 22:20:49 +00:00
Tianjie Xu 4609778204 Merge "Finish the new data receiver when update fails" am: 9831ef389b
am: 85fca1fc57

Change-Id: I0ff54e132aceb96305182daeaf77a79491ba412b
2017-10-20 21:37:28 +00:00
Tianjie Xu 85fca1fc57 Merge "Finish the new data receiver when update fails"
am: 9831ef389b

Change-Id: I62be2406eede1f9e02ee4ca45ffca6fd2283ef0a
2017-10-20 21:11:20 +00:00
Tianjie Xu 9831ef389b Merge "Finish the new data receiver when update fails" 2017-10-20 21:01:48 +00:00
Tianjie Xu 5450c84ba4 Finish the new data receiver when update fails
The thread to receive new data may still be alive after we exit
PerformBlockImageUpdate() upon failures. This caused memory corruption
when we run the unittest repeatedly. Set the receiver_available flag
to false and make sure the receiver exits when the update fails.

Bug: 65430057
Test: unittests passed with tsan
Change-Id: Icb232d13fb96c78262249ffbd29cdbe5b77f1fce
2017-10-20 11:14:56 -07:00
Bill Yi 661fa2450d Import translations. DO NOT MERGE am: 9bc56553dd -s ours am: 63405d5d1c -s ours
am: 684d255b11  -s ours

Change-Id: Ib46540b810ba2337106b5548337ce7cb6fe77a82
2017-10-20 15:53:54 +00:00
Bill Yi 684d255b11 Import translations. DO NOT MERGE am: 9bc56553dd -s ours
am: 63405d5d1c  -s ours

Change-Id: I9a11da2bbf5de6f7601d74cbde3bc67b81399452
2017-10-20 15:41:53 +00:00
Bill Yi 63405d5d1c Import translations. DO NOT MERGE
am: 9bc56553dd  -s ours

Change-Id: Icbd59fbdd4a239a57bedbf6e36fea4eb30364622
2017-10-20 15:33:23 +00:00
Bill Yi 9bc56553dd Import translations. DO NOT MERGE
Auto-generated-cl: translation import
Exempt-From-Owner-Approval: translation import

Bug: 68003463
Change-Id: Iae8fc3afc1453b6b609dae2bbff08231d00735e7
2017-10-20 01:50:04 -07:00
Dan Willemsen 2ee9266827 libdrm_platform is now libdrm
Since it's converted to Soong and is using vendor_available.

Test: mmma bootable/recovery
Change-Id: I57b40c26abc2f6031241de893b3184ed1283e1fe
2017-10-19 22:30:57 -07:00
Jiyong Park 647e396445 Build libminui with BOARD_VNDK_VERSION
Use libdrm_platform which is a platform variant of libdrm.

Bug: 63741047
Bug: 37342627
Test: BOARD_VNDK_VERSION=current m -j libminui
Test: ryu recovery graphics test shows various graphics
Change-Id: Ifd2c1432781a96538585cdf818aa728d628a2f5a
Merged-In: Ifd2c1432781a96538585cdf818aa728d628a2f5a
2017-10-19 16:45:23 -07:00
Tao Bao a6f341ebed Merge "rotate_logs: Clean up the header includes." am: 30ec005104 am: c8eba4a036 am: 41763a5dbb
am: 04bcf3ee76

Change-Id: I3c97a13dd949fe425e83dbf3f39306ba35d0b1d1
2017-10-18 20:40:49 +00:00
Tao Bao 04bcf3ee76 Merge "rotate_logs: Clean up the header includes." am: 30ec005104 am: c8eba4a036
am: 41763a5dbb

Change-Id: I257ece1d0df06c45faac1501c8cc3c13da43a3db
2017-10-18 20:38:58 +00:00
Tao Bao 41763a5dbb Merge "rotate_logs: Clean up the header includes." am: 30ec005104
am: c8eba4a036

Change-Id: Ibac286ecec3c31a8aa6d1fb4cf47428c39549632
2017-10-18 20:31:56 +00:00
Tao Bao c8eba4a036 Merge "rotate_logs: Clean up the header includes."
am: 30ec005104

Change-Id: Icc10e4b6715a78deb6aab73829efa336821f849d
2017-10-18 20:27:57 +00:00
Tao Bao 30ec005104 Merge "rotate_logs: Clean up the header includes." 2017-10-18 20:21:36 +00:00
Tao Bao 245c522588 rotate_logs: Clean up the header includes.
Also clang-format rotate_logs.cpp to get consistent style.

Test: mmma bootable/recovery
Test: recovery_manual_test works on marlin.
Change-Id: I1210a346b97bbf0e1a8c3f8e3e73a7c114858ca8
2017-10-18 11:08:37 -07:00
Tao Bao 01395b0949 Merge "otautil: Move RangeSet implementation into rangeset.cpp." am: bab1e8efc8 am: f63dbde3ef am: 6f4f528419
am: 2a9dbb4063

Change-Id: I41d48f22966f1596acc5baa283b79d20cdb78151
2017-10-17 16:12:44 +00:00
Tao Bao 2a9dbb4063 Merge "otautil: Move RangeSet implementation into rangeset.cpp." am: bab1e8efc8 am: f63dbde3ef
am: 6f4f528419

Change-Id: Id88582449fe3f1cf49931b6ea3d640c3308d92cb
2017-10-17 16:10:13 +00:00
Tao Bao 6f4f528419 Merge "otautil: Move RangeSet implementation into rangeset.cpp." am: bab1e8efc8
am: f63dbde3ef

Change-Id: Ie550fbbdf20a3f0e7d23038b5841f842812ade7a
2017-10-17 16:06:11 +00:00
Tao Bao f63dbde3ef Merge "otautil: Move RangeSet implementation into rangeset.cpp."
am: bab1e8efc8

Change-Id: I5d41bdfe514e09c49bf2279ee6ca1b56ff5aab1f
2017-10-17 16:04:13 +00:00
Tao Bao bab1e8efc8 Merge "otautil: Move RangeSet implementation into rangeset.cpp." 2017-10-17 16:01:50 +00:00
Tao Bao 4568582002 otautil: Move RangeSet implementation into rangeset.cpp.
Since it has grown much larger, users of the header shouldn't compile
and carry their full copies.

Also add missing header includes in imgdiff.cpp and imgdiff_test.cpp.

Test: mmma bootable/recovery
Test: recovery_unit_test; recovery_component_test; recovery_host_test
Change-Id: I88ca54171765e5606ab0d61580fbc1ada578fd7d
2017-10-16 11:28:18 -07:00
Chih-hung Hsieh a68bef7cd6 Merge "Fix owner email address." am: b4a8c6abd9 am: 97d9ae086a am: bb971cce89
am: 111469726c

Change-Id: I02b09b0bb3d161aa3c18eba73d95d6c33c17b4d4
2017-10-12 18:42:26 +00:00
Chih-hung Hsieh 111469726c Merge "Fix owner email address." am: b4a8c6abd9 am: 97d9ae086a
am: bb971cce89

Change-Id: I8afed0f0c58cacf92ee2acaf0a6d177061f9e323
2017-10-12 18:38:56 +00:00
Chih-hung Hsieh bb971cce89 Merge "Fix owner email address." am: b4a8c6abd9
am: 97d9ae086a

Change-Id: Id31b7ab0a26130ce495aa061a109aa9280a771f2
2017-10-12 18:29:03 +00:00
Chih-hung Hsieh 97d9ae086a Merge "Fix owner email address."
am: b4a8c6abd9

Change-Id: Ia637ddf881edb5db4b172d1ab2f75f321aee4c2a
2017-10-12 18:22:56 +00:00
Chih-hung Hsieh b4a8c6abd9 Merge "Fix owner email address." 2017-10-12 18:10:12 +00:00
Chih-Hung Hsieh 4945407f5b Fix owner email address.
Test: normal build.
Bug: 67718313
Change-Id: Ia3144c634647f7a457810370a9f7275c19a8aa76
2017-10-12 10:45:04 -07:00
Tao Bao f263a92016 Merge "applypatch: Move to Soong." am: b058c5c481 am: 7722d8255c am: cc11f66cfd
am: 309031e02d

Change-Id: Id7b4659a9d82cf58118915f678e9e0dd6ab8eea4
2017-10-12 16:29:58 +00:00