cherry-pick.FILE5_24-31-g3aa35aa.dont-leak-memory-when-loading-non-compiled-files.patch 708 B

1234567891011121314151617181920212223242526272829303132
  1. Subject: Don't leak memory when loading non-compiled files
  2. Origin: FILE5_24-31-g3aa35aa
  3. Upstream-Author: Christos Zoulas <christos@zoulas.com>
  4. Date: Thu Sep 10 13:59:47 2015 +0000
  5. --- a/src/apprentice.c
  6. +++ b/src/apprentice.c
  7. @@ -538,6 +538,7 @@
  8. private void
  9. apprentice_unmap(struct magic_map *map)
  10. {
  11. + size_t i;
  12. if (map == NULL)
  13. return;
  14. @@ -550,6 +551,8 @@
  15. #endif
  16. case MAP_TYPE_MALLOC:
  17. free(map->p);
  18. + for (i = 0; i < MAGIC_SETS; i++)
  19. + free(map->magic[i]);
  20. break;
  21. case MAP_TYPE_USER:
  22. break;
  23. @@ -1285,6 +1288,7 @@
  24. file_oomem(ms, sizeof(*map));
  25. return NULL;
  26. }
  27. + map->type = MAP_TYPE_MALLOC;
  28. /* print silly verbose header for USG compat. */
  29. if (action == FILE_CHECK)