diff options
author | jenkins4kodi <jenkins4kodi@users.noreply.github.com> | 2015-09-14 08:30:53 +0200 |
---|---|---|
committer | jenkins4kodi <jenkins4kodi@users.noreply.github.com> | 2015-09-14 08:30:53 +0200 |
commit | ea6eeea841c2927c2ac839c77b8f98f6372aaa4e (patch) | |
tree | bc99d432aa3c442f847d7a90cd2482bf1afa05b1 | |
parent | 429afb7d150a9f8357cb70763be909b1089bdba1 (diff) | |
parent | a3972d8bf11d944c2fc33c1a72e1abbb5687e8f3 (diff) |
Merge pull request #8036 from ace20022/udf_free
-rw-r--r-- | xbmc/filesystem/udf25.cpp | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/xbmc/filesystem/udf25.cpp b/xbmc/filesystem/udf25.cpp index cf25d56836..7917756b5a 100644 --- a/xbmc/filesystem/udf25.cpp +++ b/xbmc/filesystem/udf25.cpp @@ -967,7 +967,23 @@ udf25::udf25( ) udf25::~udf25( ) { delete m_fp; - free(m_udfcache); + + struct udf_cache * cache = (struct udf_cache *) m_udfcache; + + if (!cache) + return; + + if (cache->lbs) + { + for (int n = 0; n < cache->lb_num; n++) + { + free(cache->lbs[n].data_base); + } + free(cache->lbs); + } + + free(cache->maps); + free(cache); } UDF_FILE udf25::UDFFindFile( const char* filename, uint64_t *filesize ) |