[FFmpeg-cvslog] postprocess.c: filter name needs to be double 0 terminated

Piotr Kaczuba git at videolan.org
Tue May 31 21:46:20 CEST 2011


ffmpeg | branch: master | Piotr Kaczuba <p.kaczuba at attika.ath.cx> | Mon May 30 13:19:35 2011 +0200| [84fb4e9df737c856cca7767016110fc74bee56cb] | committer: Michael Niedermayer

postprocess.c: filter name needs to be double 0 terminated

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=84fb4e9df737c856cca7767016110fc74bee56cb
---

 libpostproc/postprocess.c |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/libpostproc/postprocess.c b/libpostproc/postprocess.c
index b2c35f5..bfb96e1 100644
--- a/libpostproc/postprocess.c
+++ b/libpostproc/postprocess.c
@@ -86,6 +86,7 @@ try to unroll inner for(x=0 ... loop to avoid these damn if(x ... checks
 //#define DEBUG_BRIGHTNESS
 #include "postprocess.h"
 #include "postprocess_internal.h"
+#include "libavutil/avstring.h"
 
 unsigned postproc_version(void)
 {
@@ -766,8 +767,8 @@ pp_mode *pp_get_mode_by_name_and_quality(const char *name, int quality)
     ppMode->maxClippedThreshold= 0.01;
     ppMode->error=0;
 
-#undef strncpy
-    strncpy(temp, name, GET_MODE_BUFFER_SIZE);
+    memset(temp, 0, GET_MODE_BUFFER_SIZE);
+    av_strlcpy(temp, name, GET_MODE_BUFFER_SIZE - 1);
 
     av_log(NULL, AV_LOG_DEBUG, "pp: %s\n", name);
 
@@ -823,7 +824,7 @@ pp_mode *pp_get_mode_by_name_and_quality(const char *name, int quality)
 
                 plen= strlen(p);
                 spaceLeft= p - temp + plen;
-                if(spaceLeft + newlen  >= GET_MODE_BUFFER_SIZE){
+                if(spaceLeft + newlen  >= GET_MODE_BUFFER_SIZE - 1){
                     ppMode->error++;
                     break;
                 }



More information about the ffmpeg-cvslog mailing list