Merged revisions 99081 via svnmerge from

https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r99081 | russell | 2008-01-18 15:37:21 -0600 (Fri, 18 Jan 2008) | 9 lines

Revert adding the packed attribute, as it really doesn't make sense why that
would do any good.  Fix the real bug, which is to do the check to see if the
frame came from a translator at the beginning of ast_frame_free(), instead of
at the end.  This ensures that it always gets checked, even if none of the
parts of the frame are malloc'd, and also ensures that we aren't looking at
free'd memory in the case that it is a malloc'd frame.

(closes issue #11792, reported by explidous, patched by me)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@99082 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Russell Bryant
2008-01-18 21:38:01 +00:00
parent e345fd7ca7
commit 1807acb9b0
2 changed files with 4 additions and 4 deletions

View File

@@ -321,6 +321,9 @@ static void frame_cache_cleanup(void *data)
void ast_frame_free(struct ast_frame *fr, int cache)
{
if (ast_test_flag(fr, AST_FRFLAG_FROM_TRANSLATOR))
ast_translate_frame_freed(fr);
if (!fr->mallocd)
return;
@@ -356,9 +359,6 @@ void ast_frame_free(struct ast_frame *fr, int cache)
#endif
ast_free(fr);
}
if (ast_test_flag(fr, AST_FRFLAG_FROM_TRANSLATOR))
ast_translate_frame_freed(fr);
}
/*!