Fix memory/resource handling in imgdiff.cpp, using unique_ptr and vector.

This fixes the following cppcheck reports:
[imgdiff.cpp:197]: (error) Memory leak: img
[imgdiff.cpp:386]: (error) Memory leak: img
[imgdiff.cpp:656]: (error) Memory leak: data
[imgdiff.cpp:664]: (error) Memory leak: data
[imgdiff.cpp:668]: (error) Memory leak: data
[imgdiff.cpp:668]: (error) Resource leak: f
[imgdiff.cpp:820]: (error) Memory leak: bonus_data
[imgdiff.cpp:824]: (error) Memory leak: bonus_data
[imgdiff.cpp:824]: (error) Resource leak: f
[imgdiff.cpp:847]: (error) Memory leak: bonus_data
[imgdiff.cpp:851]: (error) Memory leak: bonus_data
[imgdiff.cpp:856]: (error) Memory leak: bonus_data
[imgdiff.cpp:860]: (error) Memory leak: bonus_data
[imgdiff.cpp:227]: (error) Memory leak: temp_entries

Change-Id: I06f878d0b677a25328e0deb84f65f3b7212e24b1
(cherry picked from commit 51dc9444bcf8d8900a521795e873d07f6cd445ef)
1 file changed
tree: 13bdca757e965783eeb5997efe148f4afe9cc228
  1. Android.mk
  2. CleanSpec.mk
  3. NOTICE
  4. README.md
  5. adb_install.cpp
  6. adb_install.h
  7. applypatch/
  8. asn1_decoder.cpp
  9. asn1_decoder.h
  10. bootloader.cpp
  11. bootloader.h
  12. common.h
  13. default_device.cpp
  14. device.cpp
  15. device.h
  16. edify/
  17. etc/
  18. fonts/
  19. fuse_sdcard_provider.cpp
  20. fuse_sdcard_provider.h
  21. fuse_sideload.cpp
  22. fuse_sideload.h
  23. install.cpp
  24. install.h
  25. interlace-frames.py
  26. minadbd/
  27. minui/
  28. minzip/
  29. mtdutils/
  30. otafault/
  31. print_sha1.h
  32. recovery-persist.cpp
  33. recovery-persist.rc
  34. recovery-refresh.cpp
  35. recovery-refresh.rc
  36. recovery.cpp
  37. res-hdpi/
  38. res-mdpi/
  39. res-xhdpi/
  40. res-xxhdpi/
  41. res-xxxhdpi/
  42. roots.cpp
  43. roots.h
  44. screen_ui.cpp
  45. screen_ui.h
  46. tests/
  47. tools/
  48. ui.cpp
  49. ui.h
  50. uncrypt/
  51. update_verifier/
  52. updater/
  53. verifier.cpp
  54. verifier.h
  55. wear_ui.cpp
  56. wear_ui.h
README.md

The Recovery Image

Quick turn-around testing

mm -j && m ramdisk-nodeps && m recoveryimage-nodeps

# To boot into the new recovery image
# without flashing the recovery partition:
adb reboot bootloader
fastboot boot $ANDROID_PRODUCT_OUT/recovery.img

Running the tests

# After setting up environment and lunch.
mmma -j bootable/recovery

# Running the tests on device.
adb root
adb sync data

# 32-bit device
adb shell /data/nativetest/recovery_unit_test/recovery_unit_test
adb shell /data/nativetest/recovery_component_test/recovery_component_test

# Or 64-bit device
adb shell /data/nativetest64/recovery_unit_test/recovery_unit_test
adb shell /data/nativetest64/recovery_component_test/recovery_component_test