From 6e3f3560c1be80583b4045a627e483c572c895b3 Mon Sep 17 00:00:00 2001 From: "Andrew J. Schorr" Date: Mon, 27 Jun 2016 20:43:08 -0400 Subject: Add comment to gawkapi.h about string termination. --- gawkapi.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'gawkapi.h') diff --git a/gawkapi.h b/gawkapi.h index f0244604..975f82df 100644 --- a/gawkapi.h +++ b/gawkapi.h @@ -278,6 +278,12 @@ enum { * The API deals exclusively with regular chars; these strings may * be multibyte encoded in the current locale's encoding and character * set. Gawk will convert internally to wide characters if necessary. + * + * Note that the string may not be terminated with a '\0' character. + * In particular, this happens for field values $n where n > 0 and n < NF, + * since the string points directly into the $0 buffer. All other strings, + * including those created by extensions, should be NUL-terminated. In general + * though, extension code should not assume that the string is NUL-terminated! */ typedef struct awk_string { char *str; /* data */ -- cgit v1.2.3