diff options
author | kpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-11-03 00:39:04 +0000 |
---|---|---|
committer | kpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-11-03 00:39:04 +0000 |
commit | d3d057390c26ce35b54750705377c4d3ff4e42bd (patch) | |
tree | a04b5ab1a5d778cb8c4239d8cac88ef1a5ebba5d /main/file.c | |
parent | 9a2130e9dec6e913af3b75006c23feb0520d6814 (diff) |
port gcc 4.3.x warning fixes from trunk to this branch
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.0@153743 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main/file.c')
-rw-r--r-- | main/file.c | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/main/file.c b/main/file.c index e88279a6f..4468d2276 100644 --- a/main/file.c +++ b/main/file.c @@ -248,11 +248,18 @@ static char *build_filename(const char *filename, const char *ext) if (!strcmp(ext, "wav49")) ext = "WAV"; - if (filename[0] == '/') - asprintf(&fn, "%s.%s", filename, ext); - else - asprintf(&fn, "%s/sounds/%s.%s", - ast_config_AST_DATA_DIR, filename, ext); + if (filename[0] == '/') { + if (asprintf(&fn, "%s.%s", filename, ext) < 0) { + ast_log(LOG_WARNING, "asprintf() failed: %s\n", strerror(errno)); + fn = NULL; + } + } else { + if (asprintf(&fn, "%s/sounds/%s.%s", + ast_config_AST_DATA_DIR, filename, ext) < 0) { + ast_log(LOG_WARNING, "asprintf() failed: %s\n", strerror(errno)); + fn = NULL; + } + } return fn; } @@ -1183,8 +1190,11 @@ static int waitstream_core(struct ast_channel *c, const char *breakon, break; case AST_FRAME_VOICE: /* Write audio if appropriate */ - if (audiofd > -1) - write(audiofd, fr->data, fr->datalen); + if (audiofd > -1) { + if (write(audiofd, fr->data, fr->datalen) < 0) { + ast_log(LOG_WARNING, "write() failed: %s\n", strerror(errno)); + } + } default: /* Ignore all others */ break; |