]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
fixes issue with translator frame not getting freed
authorDavid Vossel <dvossel@digium.com>
Thu, 29 Jul 2010 19:04:23 +0000 (19:04 +0000)
committerDavid Vossel <dvossel@digium.com>
Thu, 29 Jul 2010 19:04:23 +0000 (19:04 +0000)
A translator frame even if it local storage so the translation path
can be freed.  This issue prevented g729 licenses from being freed up.

(closes issue #17630)
Reported by: manvirr
Patches:
      encoder_fix.diff uploaded by dvossel (license 671)
Tested by: manvirr, dvossel

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

main/channel.c

index f060fdb59731b5af9ea44f859826560d43bc031d..1d28515c64b7b8c911d782a3a99064de109915aa 100644 (file)
@@ -3185,6 +3185,9 @@ int ast_write(struct ast_channel *chan, struct ast_frame *fr)
                                                        AST_LIST_NEXT(cur, frame_list) = NULL;
                                                        ast_frfree(cur);
                                                }
+                                               if (new_frame != dup) {
+                                                       ast_frfree(new_frame);
+                                               }
                                                cur = dup;
                                        }
                                }