summaryrefslogtreecommitdiff
path: root/upb/bytestream.h
diff options
context:
space:
mode:
Diffstat (limited to 'upb/bytestream.h')
-rw-r--r--upb/bytestream.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/upb/bytestream.h b/upb/bytestream.h
index 6ec1ba6..cbaef48 100644
--- a/upb/bytestream.h
+++ b/upb/bytestream.h
@@ -215,9 +215,10 @@ INLINE int upb_bytesink_putc(upb_bytesink *sink, char ch) {
}
INLINE int upb_bytesink_putrepeated(upb_bytesink *sink, char ch, int len) {
- char buf[len];
- memset(buf, ch, len);
- return upb_bytesink_write(sink, buf, len);
+ for (int i = 0; i < len; i++)
+ if (upb_bytesink_write(sink, &ch, 1) < 0)
+ return -1;
+ return len;
}
INLINE uint64_t upb_bytesink_getoffset(upb_bytesink *sink) {
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback