diff options
-rwxr-xr-x | src/cairo-cff-subset.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/cairo-cff-subset.c b/src/cairo-cff-subset.c index ed6909bc7..0e206f2d5 100755 --- a/src/cairo-cff-subset.c +++ b/src/cairo-cff-subset.c @@ -51,6 +51,7 @@ #include "cairo-scaled-font-subsets-private.h" #include "cairo-truetype-subset-private.h" +#include <stdio.h> #include <string.h> #include <locale.h> @@ -331,7 +332,10 @@ decode_real (unsigned char *p, double *real) buf = buffer2 + (q - buffer); strncpy (buf, decimal_point, decimal_point_len); buf += decimal_point_len; - strcpy (buf, q + 1); + //(2017.04.17) Since secure issue, replace strcpy to strncpy + //strcpy (buf, q + 1); + strncpy (buf, q + 1, (buffer + sizeof(buffer)/sizeof(buffer[0])) - (q + 1)); + //same as strncpy (buf, q + 1, (100 - (q + 1)); buf = buffer2; } |