media_cache: Mark cache entry stale if cache file is removed

In the event that a cache file is removed out from under us, we should
treat the cache entry as stale and force a refresh.

ASTERISK-26774 #close
Reported by: Igor Gamayunov

Change-Id: I3b1bd0c999d59d18664ef73a29823bc5b431dc52
pull/7/head
Sean Bright 8 years ago
parent 0986998f2f
commit 60e9e4fcc0

@ -224,7 +224,8 @@ int ast_media_cache_retrieve(const char *uri, const char *preferred_file_name,
*/
bucket_file = ao2_find(media_cache, uri, OBJ_SEARCH_KEY | OBJ_NOLOCK);
if (bucket_file) {
if (!ast_bucket_file_is_stale(bucket_file)) {
if (!ast_bucket_file_is_stale(bucket_file)
&& !access(bucket_file->path, R_OK)) {
ast_copy_string(file_path, bucket_file->path, len);
if ((ext = strrchr(file_path, '.'))) {
*ext = '\0';

Loading…
Cancel
Save