Christian Neukirchen wrote:
> #0  0x401b2c8d in memmove () from /lib/libc.so.6
> #1  0x402f16b5 in xmlBufferAdd () from /usr/lib/libxml2.so
...
> def initialize(source)
>  @reader = XMLTextReader.xmlReaderForMemory(source, source.size, "url", "",0)
> end

It appears that source is free'ed by GC outside the method. So I think
guy's answer is a good way to keep up an allocated string.

ts wrote:
>        @source = source
>        @reader = XMLTextReader.xmlReaderForMemory(@source, source.size, "url", "", 0)
-- 
Takaaki Tateishi <ttate / ttsky.net>