summaryrefslogtreecommitdiff
path: root/ext/syck/syck.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/syck/syck.c')
-rw-r--r--ext/syck/syck.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/ext/syck/syck.c b/ext/syck/syck.c
index 8d319379a3..c9aad7a8a5 100644
--- a/ext/syck/syck.c
+++ b/ext/syck/syck.c
@@ -71,9 +71,9 @@ syck_io_str_read( char *buf, SyckIoStr *str, long max_size, long skip )
if ( max_size >= 0 )
{
max_size -= skip;
- if ( max_size < 0 ) max_size = 0;
+ if ( max_size <= 0 ) max_size = 0;
+ else str->ptr += max_size - 1;
- str->ptr += max_size;
if ( str->ptr > str->end )
{
str->ptr = str->end;