summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--ext/syck/emitter.c1
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index dfc601510e..d5b31a99f2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Thu Feb 2 23:51:18 2006 Hirokazu Yamamoto <ocean@m2.ccsnet.ne.jp>
+
+ * ext/syck/emitter.c (syck_emitter_write): should not set '\0' on
+ emitter's marker. if marker points to the end of buffer, this causes
+ buffer overrun. (ex: YAML.dump("." * 12288))
+
Thu Feb 2 16:01:24 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (eval): need not to protect $SAFE value.
diff --git a/ext/syck/emitter.c b/ext/syck/emitter.c
index 9fe699f9ed..f8d7b548a9 100644
--- a/ext/syck/emitter.c
+++ b/ext/syck/emitter.c
@@ -314,7 +314,6 @@ syck_emitter_write( SyckEmitter *e, char *str, long len )
*/
S_MEMCPY( e->marker, str, char, len );
e->marker += len;
- e->marker[0] = '\0';
}
/*