diff --git a/funcs/func_env.c b/funcs/func_env.c index 1d3e95c0ef1bafe6eb63ee93a176499285db2328..0daa7f48d12f882639adfc2c619ce666d4870172 100644 --- a/funcs/func_env.c +++ b/funcs/func_env.c @@ -561,7 +561,7 @@ static int file_read(struct ast_channel *chan, const char *cmd, char *data, stru /* Don't go past the length requested */ if (off_i + toappend > offset + length) { - toappend = length - off_i; + toappend = offset + length - off_i; } ast_str_append_substr(buf, len, fbuf, toappend);