Bug #1280 » syck.patch
| ext/syck/emitter.c (working copy) | ||
|---|---|---|
|      * Flush if at end of buffer | ||
|      */ | ||
|     at = e->marker - e->buffer; | ||
|     if ( len + at >= e->bufsize ) | ||
|     if ( len + at >= (long)e->bufsize ) | ||
|     { | ||
|         syck_emitter_flush( e, 0 ); | ||
| 	for (;;) { | ||
| ... | ... | |
|      */ | ||
|     if ( check_room > 0 ) | ||
|     { | ||
|         if ( e->bufsize > ( e->marker - e->buffer ) + check_room ) | ||
|         if ( (long)e->bufsize > ( e->marker - e->buffer ) + check_room ) | ||
|         { | ||
|             return; | ||
|         } | ||
| ... | ... | |
|             const char *subd = tag + 4; | ||
|             while ( *subd != ':' && *subd != '\0' ) subd++; | ||
|             if ( *subd == ':' ) { | ||
|                 if ( subd - tag > ( strlen( YAML_DOMAIN ) + 5 ) && | ||
|                 if ( subd - tag > ( (long)( strlen( YAML_DOMAIN ) + 5 )) && | ||
|                      strncmp( subd - strlen( YAML_DOMAIN ), YAML_DOMAIN, strlen( YAML_DOMAIN ) ) == 0 ) { | ||
|                     syck_emitter_write( e, tag + 4, subd - strlen( YAML_DOMAIN ) - ( tag + 4 ) - 1 ); | ||
|                     syck_emitter_write( e, "/", 1 ); | ||