Chromium Code Reviews
Description[Courgette] Refactor: Manage AssemblyProgram and EncodedProgram with scoped_ptr.
Previously naked pointers AssemblyProgram and EncodedProgram are used over the
place, and are deallocated using Delete{AssemblyProgram, EncodedProgram}().
In this CL we use scoped_ptr to manage the life cycles of these objects.
- Removed DeleteAssemblyProgram() and DeleteEncodedProgram() and replaced calls
with e.g., program.reset(nullptr); if the manual deallocation is a peak
memory optimization.
- Moved Encode() and ReadEncodedProgram() to the .h files matching the .cc files.
- Extracted DetectExecutableType() and ParseDetectedExecutable() from
disassembly.* to new files program_detector*c, since Disassembly is really an
implementation that caller's don't care about.
Committed: https://crrev.com/0a9cbf1781a114b35a4e0f4a834f2d24ade2e917
Cr-Commit-Position: refs/heads/master@{#372212}
Committed: https://crrev.com/8d5be25a65a341fcbd1b92a6856e8c71600a2bec
Cr-Commit-Position: refs/heads/master@{#372436}
Patch Set 1 #Patch Set 2 : Fix comments and includes. #
Total comments: 18
Patch Set 3 : Replace .reset(nullptr) with reset(); spacing fixes. #Patch Set 4 : Sync; spacing fixes. #Patch Set 5 : Fix courgette_fuzz build error. #Patch Set 6 : Sync. #Patch Set 7 : Fix courgette_fuzzer in libfuzzer. #
Messages
Total messages: 53 (22 generated)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||