shithub: opusfile

Download patch

ref: 66a8c15828453b24d39776e5eb4d363c0b28e8dd
parent: 78cd9bcf54ce3e9abc48899c734bf642f7f06343
author: Timothy B. Terriberry <[email protected]>
date: Sun Jul 3 14:43:26 EDT 2016

Fix NULL check in opus_tags_add_comment().

In 0221ca95fc58 the allocation result went from being stored
 directly in "_tags->user_comments[ncomments]" to being stored in
 the temporary "comment".
However, the NULL check for allocation failure was not updated to
 match.
This meant this function would almost always fail, unless you had
 added binary metadata first.

Fixes Coverity CID 149874.

--- a/src/info.c
+++ b/src/info.c
@@ -306,7 +306,7 @@
   if(OP_UNLIKELY(ret<0))return ret;
   comment_len=(int)strlen(_comment);
   comment=op_strdup_with_len(_comment,comment_len);
-  if(OP_UNLIKELY(_tags->user_comments[ncomments]==NULL))return OP_EFAULT;
+  if(OP_UNLIKELY(comment==NULL))return OP_EFAULT;
   _tags->user_comments[ncomments]=comment;
   _tags->comment_lengths[ncomments]=comment_len;
   _tags->comments=ncomments+1;