Make sure we handle a uint32_t payload in ast_frdup()
authorRussell Bryant <russell@russellbryant.com>
Mon, 15 Dec 2008 21:53:30 +0000 (21:53 +0000)
committerRussell Bryant <russell@russellbryant.com>
Mon, 15 Dec 2008 21:53:30 +0000 (21:53 +0000)
(closes issue #14080)
Reported by: fnordian
Patches:
      frame.patch uploaded by fnordian (license 110)

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

main/frame.c

index 8e96b19..84a2b0a 100644 (file)
@@ -476,6 +476,8 @@ struct ast_frame *ast_frdup(const struct ast_frame *f)
        if (out->datalen) {
                out->data.ptr = buf + sizeof(*out) + AST_FRIENDLY_OFFSET;
                memcpy(out->data.ptr, f->data.ptr, out->datalen);       
+       } else {
+               out->data.uint32 = f->data.uint32;
        }
        if (srclen > 0) {
                /* This may seem a little strange, but it's to avoid a gcc (4.2.4) compiler warning */