[xml] strace reports SIGFPE during parsing



Hello,

as I started to test the recently announced libxml2 for pas, I 
discovered that whenever I try to parse an XML file, for instance 
with xmlParseFile function, a SIGFPE occurs.
The version I use is 2.4.0.
I tested the same with version 2.3.9 and no SIGFPE is there.
This supersimple program was used to test it 
(just a call to xmlParseFile):
---------------------t1.c--------------------
#include <libxml/parser.h>
 
int main(int argc, char** argv)
{
        xmlDocPtr doc = xmlParseFile(BAD_CAST argv[1]);
        return 0;
}
--------------------- end ------------------

when run with strace, it shows that SIGFPE occurs many times and 
is ignored (see log at the end of this message).
This is not a problem inside a normal C program, but Kylix seems 
to handle this signal in a way that terminates the application.
I do not want to override the signal handling in order to use 
libxml2 under Kylix.

Does anybody know where this strange behavior comes from ?

Thanks,
Petr

libxml2 for pascal --> http://sourceforge.net/projects/libxml2-pas



---- (log) ----
brk(0x804971c)                          = 0x804971c
brk(0x804a000)                          = 0x804a000
stat64("/home/pk/tmp/test.xml", {st_mode=S_IFREG|0644, 
st_size=60, ...}) = 0
open("/home/pk/tmp/test.xml", O_RDONLY) = 3
brk(0x804b000)                          = 0x804b000
brk(0x804d000)                          = 0x804d000
rt_sigaction(SIGFPE, {SIG_IGN}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGFPE, {SIG_DFL}, {SIG_IGN}, 8) = 0
rt_sigaction(SIGFPE, {SIG_IGN}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGFPE, {SIG_DFL}, {SIG_IGN}, 8) = 0
rt_sigaction(SIGFPE, {SIG_IGN}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGFPE, {SIG_DFL}, {SIG_IGN}, 8) = 0
brk(0x804e000)                          = 0x804e000
fstat64(3, {st_mode=S_IFREG|0644, st_size=60, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x401f6000
read(3, "<?xml version=\"1.0\"?>\n<cfg-def n"..., 4096) = 60
...(following line many times) 
read(3, "", 4096)                       = 0
...
close(3)                                = 0
munmap(0x401f6000, 4096)                = 0
_exit(0)                                = ?----- end -----



-----
Hrajte on-line hry na http://herna.centrum.cz
Založte si svůj mail na http://mail.centrum.cz







[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]