Browse Source

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

tags/n0.8
Piotr Kaczuba Michael Niedermayer 14 years ago
parent
commit
84fb4e9df7
1 changed files with 4 additions and 3 deletions
  1. +4
    -3
      libpostproc/postprocess.c

+ 4
- 3
libpostproc/postprocess.c View File

@@ -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;
}


Loading…
Cancel
Save