]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
medix_index: Display errors when library calls fail
authorMatthew Jordan <mjordan@digium.com>
Thu, 31 Oct 2013 15:51:36 +0000 (15:51 +0000)
committerMatthew Jordan <mjordan@digium.com>
Thu, 31 Oct 2013 15:51:36 +0000 (15:51 +0000)
Based on feedback from ipengineer in #asterisk, when the media indexer
cannot access a sound file on the system (or otherwise fails) Asterisk
displays a "Cannot frob file" error but fails to tell you why. This is
especially problematic as the media_indexer failing will rpevent Asterisk
from starting, as it is in the core.

We now display the errno error messages so folks can figure out what they've
done wrong.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/12@402285 65c4cc65-6c06-0410-ace0-fbb531ad65f3

main/media_index.c

index 64fbbbddbe661aa8071768c2be566b9d894bf647..278b37c2641263fe79c1af08275e4738f2bf2ec9 100644 (file)
@@ -394,7 +394,7 @@ static int process_description_file(struct ast_media_index *index,
        }
        f = fopen(ast_str_buffer(description_file_path), "r");
        if (!f) {
-               ast_log(LOG_WARNING, "Could not open media description file '%s'\n", ast_str_buffer(description_file_path));
+               ast_log(LOG_WARNING, "Could not open media description file '%s': %s\n", ast_str_buffer(description_file_path), strerror(errno));
                return -1;
        }
 
@@ -402,7 +402,7 @@ static int process_description_file(struct ast_media_index *index,
                char *file_identifier, *description;
                if (!fgets(buf, sizeof(buf), f)) {
                        if (ferror(f)) {
-                               ast_log(LOG_ERROR, "Error reading from file %s\n", ast_str_buffer(description_file_path));
+                               ast_log(LOG_ERROR, "Error reading from file %s: %s\n", ast_str_buffer(description_file_path), strerror(errno));
                        }
                        continue;
                }
@@ -416,7 +416,7 @@ static int process_description_file(struct ast_media_index *index,
                                }
                        }
                        if (ferror(f)) {
-                               ast_log(LOG_ERROR, "Error reading from file %s\n", ast_str_buffer(description_file_path));
+                               ast_log(LOG_ERROR, "Error reading from file %s: %s\n", ast_str_buffer(description_file_path), strerror(errno));
                        }
                        continue;
                }
@@ -536,7 +536,7 @@ static int media_index_update(struct ast_media_index *index,
 
        srcdir = opendir(ast_str_buffer(index_dir));
        if (srcdir == NULL) {
-               ast_log(LOG_ERROR, "Failed to open %s\n", ast_str_buffer(index_dir));
+               ast_log(LOG_ERROR, "Failed to open %s: %s\n", ast_str_buffer(index_dir), strerror(errno));
                return -1;
        }
 
@@ -551,7 +551,7 @@ static int media_index_update(struct ast_media_index *index,
                ast_str_set(&statfile, 0, "%s/%s", ast_str_buffer(index_dir), dent->d_name);
 
                if (stat(ast_str_buffer(statfile), &st) < 0) {
-                       ast_log(LOG_ERROR, "Failed to stat %s\n", ast_str_buffer(statfile));
+                       ast_log(LOG_ERROR, "Failed to stat %s: %s\n", ast_str_buffer(statfile), strerror(errno));
                        res = -1;
                        break;
                }