Bug#874727: libcoin80v5: Program using libcoin80v5 and any other library that uses lebexpat1 segfaults.
Hello all, tried to reproduce and still receive the crash triggered by either SVG import or the manual action in the python console. The parameter --enable-system-expat seems to just defines HAVE_SYSTEM_EXPAT, which seems not used later. Attached patch makes coin3 not to build the subdirectory src/xml/expat and avoids linking to that local libexpat.la. I assume therefore now following warning is shown: dpkg-shlibdeps: warning: symbol XML_ParserFree used by debian/libcoin80v5/usr/lib/x86_64-linux-gnu/libCoin.so.80.0.0 found in none of the libraries. But a local built package libcoin80v5 with this patch applied makes Freecad not crash on SVG import or the manual action in python console. Upstream seems to have added in [1] related changes into the cmake build system. Kind regards, Bernhard freecad 0.17+dfsg1-5 libcoin80v5 3.1.4~abc9f50+dfsg3-2 [1] https://bitbucket.org/Coin3D/coin/pull-requests/107/allow-to-use-system-expat/diff Description: Do not build and link internal expat Author: Bernhard Ãbelacker Bug-Debian: https://bugs.debian.org/874727 Forwarded: no Last-Update: 2018-11-04 --- --- coin3-3.1.4~abc9f50+dfsg3.orig/src/Makefile.am +++ coin3-3.1.4~abc9f50+dfsg3/src/Makefile.am @@ -83,7 +83,7 @@ libCoin@SUFFIX@_la_LIBADD = actions/liba hardcopy/libhardcopy.la threads/libthreads.la \ shaders/libshaders.la shadows/libshadows.la geo/libgeo.la \ foreignfiles/libforeignfiles.la xml/libxml.la \ - xml/expat/libexpat.la profiler/libprofiler.la \ + profiler/libprofiler.la \ vrml97/libvrml97.la scxml/libscxml.la soscxml/libsoscxml.la $(SUPERGLULIBADD) endif endif --- coin3-3.1.4~abc9f50+dfsg3.orig/src/Makefile.in +++ coin3-3.1.4~abc9f50+dfsg3/src/Makefile.in @@ -224,7 +224,6 @@ LTLIBRARIES = $(lib_LTLIBRARIES) @HACKING_DYNAMIC_MODULES_FALSE@@MAC_FRAMEWORK_FALSE@ geo/libgeo.la \ @HACKING_DYNAMIC_MODULES_FALSE@@MAC_FRAMEWORK_FALSE@ foreignfiles/libforeignfiles.la \ @HACKING_DYNAMIC_MODULES_FALSE@@MAC_FRAMEWORK_FALSE@ xml/libxml.la \ -@HACKING_DYNAMIC_MODULES_FALSE@@MAC_FRAMEWORK_FALSE@ xml/expat/libexpat.la \ @HACKING_DYNAMIC_MODULES_FALSE@@MAC_FRAMEWORK_FALSE@ profiler/libprofiler.la \ @HACKING_DYNAMIC_MODULES_FALSE@@MAC_FRAMEWORK_FALSE@ vrml97/libvrml97.la \ @HACKING_DYNAMIC_MODULES_FALSE@@MAC_FRAMEWORK_FALSE@ scxml/libscxml.la \ @@ -702,7 +701,7 @@ DEFAULT_INCLUDES = -I$(top_builddir)/inc @HACKING_DYNAMIC_MODULES_FALSE@@MAC_FRAMEWORK_FALSE@ hardcopy/libhardcopy.la threads/libthreads.la \ @HACKING_DYNAMIC_MODULES_FALSE@@MAC_FRAMEWORK_FALSE@ shaders/libshaders.la shadows/libshadows.la geo/libgeo.la \ @HACKING_DYNAMIC_MODULES_FALSE@@MAC_FRAMEWORK_FALSE@ foreignfiles/libforeignfiles.la xml/libxml.la \ -@HACKING_DYNAMIC_MODULES_FALSE@@MAC_FRAMEWORK_FALSE@ xml/expat/libexpat.la profiler/libprofiler.la \ +@HACKING_DYNAMIC_MODULES_FALSE@@MAC_FRAMEWORK_FALSE@ profiler/libprofiler.la \ @HACKING_DYNAMIC_MODULES_FALSE@@MAC_FRAMEWORK_FALSE@ vrml97/libvrml97.la scxml/libscxml.la soscxml/libsoscxml.la $(SUPERGLULIBADD) @HACKING_DYNAMIC_MODULES_TRUE@@MAC_FRAMEWORK_FALSE@libCoin@SUFFIX@_la_LIBADD = --- coin3-3.1.4~abc9f50+dfsg3.orig/src/xml/Makefile.am +++ coin3-3.1.4~abc9f50+dfsg3/src/xml/Makefile.am @@ -1,6 +1,6 @@ ## Process this file with automake to generate Makefile.in. -SUBDIRS = expat +SUBDIRS = RegularSources = \ document.cpp \ --- coin3-3.1.4~abc9f50+dfsg3.orig/src/xml/Makefile.in +++ coin3-3.1.4~abc9f50+dfsg3/src/xml/Makefile.in @@ -424,7 +424,7 @@ target_alias = @target_alias@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ -SUBDIRS = expat +SUBDIRS = RegularSources = \ document.cpp \ element.cpp \
Bug#874727: libcoin80v5: Program using libcoin80v5 and any other library that uses lebexpat1 segfaults.
tags 874727 +moreinfo severity 874727 important thanks Hi, thank you for the bugreport. Please provide some more information, what packages in Debian are affected. Thanks Anton 2017-09-09 11:33 GMT+02:00 markus: > Package: libcoin80v5 > Version: 3.1.4~abc9f50+dfsg1-2 > Severity: critical > Justification: breaks unrelated software > > Dear Maintainer, > > Due to the change in libexpat1 (since 2.2.0, currently at 2.2.3) the included > copy of it in libcoin results in segfaults of any program that uses > libexpat1. Specifically any program that uses xml from python and links > against libcoin will segfault. > > The stacktrace looks like it is a problem with libexpat1 leading to a > segfault in XML_SetHashSalt - however looking at that function there is no > way it could possibly segfault - unless of course the provided XMLParser > pointer does not actually point to what expat expects to be an XMLParser - > which is indeed the case because the XMLParser instance was created by a call > into lobcoin which is still on libexpat 2.2.0.
Processed: Re: Bug#874727: libcoin80v5: Program using libcoin80v5 and any other library that uses lebexpat1 segfaults.
Processing commands for cont...@bugs.debian.org: > tags 874727 +moreinfo Bug #874727 [libcoin80v5] libcoin80v5: Program using libcoin80v5 and any other library that uses lebexpat1 segfaults. Added tag(s) moreinfo. > severity 874727 important Bug #874727 [libcoin80v5] libcoin80v5: Program using libcoin80v5 and any other library that uses lebexpat1 segfaults. Severity set to 'important' from 'critical' > thanks Stopping processing here. Please contact me if you need assistance. -- 874727: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=874727 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems
Bug#874727: libcoin80v5: Program using libcoin80v5 and any other library that uses lebexpat1 segfaults.
Package: libcoin80v5 Version: 3.1.4~abc9f50+dfsg1-2 Severity: critical Justification: breaks unrelated software Dear Maintainer, Due to the change in libexpat1 (since 2.2.0, currently at 2.2.3) the included copy of it in libcoin results in segfaults of any program that uses libexpat1. Specifically any program that uses xml from python and links against libcoin will segfault. The stacktrace looks like it is a problem with libexpat1 leading to a segfault in XML_SetHashSalt - however looking at that function there is no way it could possibly segfault - unless of course the provided XMLParser pointer does not actually point to what expat expects to be an XMLParser - which is indeed the case because the XMLParser instance was created by a call into lobcoin which is still on libexpat 2.2.0. -- System Information: Debian Release: buster/sid APT prefers testing APT policy: (900, 'testing'), (750, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 4.12.0-1-amd64 (SMP w/2 CPU cores) Locale: LANG=en_CA.UTF-8, LC_CTYPE=en_CA.UTF-8 (charmap=UTF-8), LANGUAGE=en_CA:en (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages libcoin80v5 depends on: ii libc6 2.24-17 ii libgcc1 1:7.2.0-3 ii libgl1-mesa-glx [libgl1] 13.0.6-1+b2 ii libice6 2:1.0.9-2 ii libsm62:1.2.2-1+b3 ii libstdc++67.2.0-3 ii libx11-6 2:1.6.4-3 ii libxext6 2:1.3.3-1+b2 libcoin80v5 recommends no packages. Versions of packages libcoin80v5 suggests: ii libbz2-1.0 1.0.6-8.1 ii libfreetype6 2.8-0.2 pn libopenal0a ii libsimage-dev 1.7.1~2c958a6.dfsg-4 ii zlib1g 1:1.2.8.dfsg-5 -- no debconf information