summaryrefslogtreecommitdiff
path: root/include/parserutils
diff options
context:
space:
mode:
authorJohn Mark Bell <jmb@netsurf-browser.org>2008-08-13 11:09:37 +0000
committerJohn Mark Bell <jmb@netsurf-browser.org>2008-08-13 11:09:37 +0000
commitecf6e517b5f65397507697c28c29981507a052ab (patch)
tree0bb96ba235be56cee7ce5351478e7679db92e56d /include/parserutils
parent78e86666d3da1a9fd904e8bfc6b8ead22a1520ec (diff)
downloadlibparserutils-ecf6e517b5f65397507697c28c29981507a052ab.tar.gz
libparserutils-ecf6e517b5f65397507697c28c29981507a052ab.tar.bz2
Move the location of the utf8 buffer every time we're asked for a character in debug mode.
This leaks memory lots, deliberately. svn path=/trunk/libparserutils/; revision=5081
Diffstat (limited to 'include/parserutils')
-rw-r--r--include/parserutils/input/inputstream.h2
-rw-r--r--include/parserutils/utils/buffer.h2
2 files changed, 4 insertions, 0 deletions
diff --git a/include/parserutils/input/inputstream.h b/include/parserutils/input/inputstream.h
index db81eb0..26f3353 100644
--- a/include/parserutils/input/inputstream.h
+++ b/include/parserutils/input/inputstream.h
@@ -85,6 +85,8 @@ static inline uintptr_t parserutils_inputstream_peek(
if (stream == NULL)
return PARSERUTILS_INPUTSTREAM_OOD;
+ parserutils_buffer_randomise(stream->utf8);
+
#define IS_ASCII(x) (((x) & 0x80) == 0)
if (stream->cursor + offset < stream->utf8->length) {
diff --git a/include/parserutils/utils/buffer.h b/include/parserutils/utils/buffer.h
index f3a1883..96053a3 100644
--- a/include/parserutils/utils/buffer.h
+++ b/include/parserutils/utils/buffer.h
@@ -35,5 +35,7 @@ parserutils_error parserutils_buffer_discard(parserutils_buffer *buffer,
parserutils_error parserutils_buffer_grow(parserutils_buffer *buffer);
+parserutils_error parserutils_buffer_randomise(parserutils_buffer *buffer);
+
#endif