summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuigi Rizzo <rizzo@icir.org>2006-11-28 13:08:56 +0000
committerLuigi Rizzo <rizzo@icir.org>2006-11-28 13:08:56 +0000
commit29985ff8c3f5fcfc7dae6a74e07286419e07fa83 (patch)
tree3d1d06b0be450f591deca383bece26503150c967
parent77ae04d7c1469b2bf0a2ab00a0cab24aff578bc0 (diff)
do not return 500 Internal error if the AMI command provides
no output. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@48083 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rw-r--r--main/manager.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/main/manager.c b/main/manager.c
index 6207bb239..1c4d2c19e 100644
--- a/main/manager.c
+++ b/main/manager.c
@@ -2767,10 +2767,11 @@ static char *generic_http_callback(enum output_format format,
char *buf;
off_t len = lseek(s->fd, 0, SEEK_END); /* how many chars available */
- if (len > 0 && (buf = ast_calloc(1, len+1))) {
+ /* always return something even if len == 0 */
+ if ((buf = ast_calloc(1, len+1))) {
if (!s->outputstr)
s->outputstr = ast_calloc(1, sizeof(*s->outputstr));
- if (s->outputstr) {
+ if (len > 0 && s->outputstr) {
lseek(s->fd, 0, SEEK_SET);
read(s->fd, buf, len);
if (0)