summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--scripts/unifdef.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/scripts/unifdef.c b/scripts/unifdef.c
index 5384b4377333..552025e72acb 100644
--- a/scripts/unifdef.c
+++ b/scripts/unifdef.c
@@ -450,7 +450,14 @@ ignoreon(void)
static void
keywordedit(const char *replacement)
{
- strlcpy(keyword, replacement, tline + sizeof(tline) - keyword);
+ size_t size = tline + sizeof(tline) - keyword;
+ char *dst = keyword;
+ const char *src = replacement;
+ if (size != 0) {
+ while ((--size != 0) && (*src != '\0'))
+ *dst++ = *src++;
+ *dst = '\0';
+ }
print();
}
static void