Hi again On Wed, 3 Nov 2010 15:51:56 +0200, Adrian Bunk <bunk stusta de> wrote:
The crash is in gzdirect() and the only call to that function is through the new codepath, so I doubt that. Higuita, does the new libxml2 also crash with the old zlib?
building libxml2 2.7.7 against zlib 1.2.3 the crash doesnt happen anymore... so this is a change or a bug of zlib?! i build the zlib with debug and got this trace: Program received signal SIGSEGV, Segmentation fault. gzdirect (file=0xffffffffdd7caa60) at gzread.c:614 (gdb) bt full #0 gzdirect (file=0xffffffffdd7caa60) at gzread.c:614 state = 0xffffffffdd7caa60 #1 0x00007fffe85ec9bd in __xmlParserInputBufferCreateFilename (URI=0x7fffdd814540 "/usr/share/mime/application/x-gzip.xml", enc=XML_CHAR_ENCODING_NONE) at xmlIO.c:2522 ret = 0x7fffdd814580 i = <value optimized out> context = 0xffffffffdd7caa60 #2 0x00007fffe866dda5 in xmlNewTextReaderFilename__internal_alias (URI=0x7fffdd814540 "/usr/share/mime/application/x-gzip.xml") at xmlreader.c:2152 input = <value optimized out> ret = <value optimized out> directory = 0x0 #3 0x00007fffe8b13606 in ?? () from /usr/lib64/libgnomevfs-2.so.0 No symbol table info available. #4 0x00007fffe8b13bbd in gnome_vfs_mime_get_value () from /usr/lib64/libgnomevfs-2.so.0 No symbol table info available. #5 0x00007fffe91f8dbc in ?? () from /home/higuita/apps/firefox/components/libmozgnome.so No symbol table info available. #6 0x00007ffff6ab1b79 in ?? () from /home/higuita/apps/firefox/libxul.so the gzread.c at line 614 have this: /* -- see zlib.h -- */ int ZEXPORT gzdirect(file) gzFile file; { gz_statep state; /* get internal structure */ if (file == NULL) return 0; state = (gz_statep)file; /* check that we're reading */ if (state->mode != GZ_READ) <=== , line 614, crashes here return 0; So should i go "nag" the zlib list, or libxml2 is doing something wrong? :) Thanks higuita -- Naturally the common people don't want war... but after all it is the leaders of a country who determine the policy, and it is always a simple matter to drag the people along, whether it is a democracy, or a fascist dictatorship, or a parliament, or a communist dictatorship. Voice or no voice, the people can always be brought to the bidding of the leaders. That is easy. All you have to do is tell them they are being attacked, and denounce the pacifists for lack of patriotism and exposing the country to danger. It works the same in every country. -- Hermann Goering, Nazi and war criminal, 1883-1946
Attachment:
signature.asc
Description: PGP signature