diff --git a/ChangeLog b/ChangeLog index a867a05..22b86a8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2013-08-05 Kim Holviala + + * Fixed a (non-security) bug in strcut() + + 2012-12-02 Kim Holviala * Released version 1.4 diff --git a/string.c b/string.c index ebc6fe5..004e227 100644 --- a/string.c +++ b/string.c @@ -51,7 +51,7 @@ void strreplace(char *str, char from, char to) /* * Cut string to width, return resulting width (UTF-8 aware) */ -int strcut(char *str, size_t width) +size_t strcut(char *str, size_t width) { unsigned char c; int w = 0; @@ -71,7 +71,7 @@ int strcut(char *str, size_t width) w++; } - *str = '\0'; + if (c) *str = '\0'; return w; }