[gambit-list] problem with ffi and libxml2

Frederick LeMaster fred.lemaster at gmail.com
Tue Jul 17 22:32:01 EDT 2012


I think the string you are pointing to in create_reader is allowed to
be moved by the garbage collector when you return to scheme land. In
first-type, there is no return to scheme so you string constant stays
in the same place until after first_type_prime completes. I think if
you search the list you can see an example of where Marc makes an
object immovable by the garbage collector. Alternatively you can copy
the string in the create_reader call.
-Fred

On Tue, Jul 17, 2012 at 7:37 PM, Cyrille Duret <cduret at gmail.com> wrote:
> I have created a module system for my needs far more simpler than blackhole
> and I cannot integrate sxml in my module framework.
> libxml2 is the best option for me.
>
> On Tue, Jul 17, 2012 at 11:55 AM, Klaus Schilling <schilling.klaus at web.de>
> wrote:
>>
>> From: Cyrille Duret <cduret at gmail.com>
>> Subject: [gambit-list] problem with ffi and libxml2
>> Date: Tue, 17 Jul 2012 10:13:10 +0200
>>
>> > hello,
>> > I have problem to parse xml string with ffi and libxml2.
>> >
>> > My code is in the test file libxml-raw.scm :
>> >
>> > (c-declare #<<end
>> >
>> > #include <stdlib.h>
>> > #include <libxml/xmlreader.h>
>> >
>> > xmlTextReaderPtr create_reader(const char* buffer, size_t len) {
>> >   return xmlReaderForMemory(buffer, len, "_.xml", NULL, 0);
>> > }
>>
>> What are the major advantages of using libxml2 xmlreader with ffi over
>> using sxml?
>>
>> Klaus Schilling
>
>
>
> _______________________________________________
> Gambit-list mailing list
> Gambit-list at iro.umontreal.ca
> https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list
>



More information about the Gambit-list mailing list