Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

#155 wmf2* SIGSEGV when processing a particular WMF file

open
nobody
None
7
2013-12-22
2008-05-13
Maciek Grela
No

When trying to convert these files to .svg using wmf2svg the tool crashes.

Here is the backtrace I was able to get:

thermal@idaho ~/Desktop/a $ gdb wmf2svg
GNU gdb 6.8
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...
(gdb) run SCREN589.WMF
Starting program: /usr/bin/wmf2svg SCREN589.WMF

Program received signal SIGSEGV, Segmentation fault.
0xb7f93924 in wmf_ipa_font_map () from /usr/lib/libwmf-0.2.so.7
Current language: auto; currently asm
(gdb) bt
#0 0xb7f93924 in wmf_ipa_font_map () from /usr/lib/libwmf-0.2.so.7
#1 0xb7f876ad in WmfPlayMetaFile () from /usr/lib/libwmflite-0.2.so.7
#2 0xb7f8902a in wmf_scan () from /usr/lib/libwmflite-0.2.so.7
#3 0x08049048 in wmf2svg_draw ()
#4 0x0804933f in wmf2svg_file ()
#5 0x080494c5 in main ()
(gdb)

Distro: Gentoo
idaho ~ # paludis --info
paludis 0.26.1
Paludis build information:
Compiler:
CXX: i686-pc-linux-gnu-g++ 4.2.3 (Gentoo 4.2.3 p1.0)
CXXFLAGS: -O2 -march=pentium-m -pipe
LDFLAGS: -Wl,--as-needed -Wl,-O1
DATE: 2008-05-01T22:46:58+0200

Libraries:
C++ Library: GNU libstdc++ 20080201

Reduced Privs:
reduced_uid: 107
reduced_uid->name: paludisbuild
reduced_uid->dir: /var/tmp/paludis
reduced_gid: 1008
reduced_gid->name: paludisbuild

Paths:
DATADIR: /usr/share
LIBDIR: /usr/lib
LIBEXECDIR: /usr/libexec
SYSCONFDIR: /etc
PYTHONINSTALLDIR: /usr/lib/python2.5/site-packages
RUBYINSTALLDIR:

Repository virtuals:
format: virtuals

Repository installed-virtuals:
format: installed_virtuals
root: /

Repository gentoo:
format: ebuild
location: /usr/portage
append_repository_name_to_write_cache: true
binary_destination: false
binary_keywords:
binary_uri_prefix:
builddir: /var/tmp/paludis
cache: /usr/portage/metadata/cache
distdir: /usr/portage/distfiles
eapi_when_unknown: 0
eapi_when_unspecified: 0
eclassdirs: /usr/portage/eclass
ignore_deprecated_profiles: false
layout: traditional
names_cache: /var/empty
newsdir: /usr/portage/metadata/news
profile_eapi: 0
profiles: /usr/portage/profiles/default-linux/x86/2007.0/desktop
securitydir: /usr/portage/metadata/glsa
setsdir: /usr/portage/sets
sync: rsync://rsync.gentoo.org/gentoo-portage
sync_options:
use_manifest: use
write_cache: /var/empty

Package information:
paludis@1210678516: [QA version_spec.too_long] In program paludis --info:
... When fetching versions of 'sys-apps/baselayout' in installed:
... When loading package names from '/var/db/pkg' in category 'sys-apps':
... When parsing package dep spec '=sys-apps/net-tools-1.60_p20071202044231-r1':
... When parsing version spec '1.60_p20071202044231-r1':
... Number part '20071202044231' exceeds 8 digit limit permitted by the Package Manager Specification (Paludis supports arbitrary lengths, but other package managers do not)
app-admin/eselect-compiler: (none)
app-shells/bash: 3.2_p39
dev-java/java-config: 1.3.7 2.1.6
dev-lang/python: 2.5.2-r2
dev-python/pycrypto: (none)
dev-util/ccache: (none)
dev-util/confcache: (none)
sys-apps/baselayout: 2.0.0
sys-apps/openrc: 0.2.3
sys-apps/sandbox: 1.2.18.1-r2
sys-devel/autoconf: 2.13 2.62
sys-devel/automake: 1.10.1-r1 1.4_p6 1.5 1.7.9-r1 1.8.5-r3 1.9.6-r2
sys-devel/binutils: 2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool: 2.2.4
virtual/os-headers: 2.6.25-r1 (for sys-kernel/linux-headers::installed)

Repository installed:
format: vdb
location: /var/db/pkg
builddir: /var/tmp/paludis
names_cache: /var/empty
provides_cache: /var/empty
root: /

Repository installed-unpackaged:
format: installed_unpackaged
location: /var/db/unpackaged
root: /

Repository cross-toolchains:
format: ebuild
location: /usr/local/repositories/cross-toolchains
append_repository_name_to_write_cache: true
binary_destination: false
binary_keywords:
binary_uri_prefix:
builddir: /var/tmp/paludis
cache: /var/empty
distdir: /usr/portage/distfiles
eapi_when_unknown: 0
eapi_when_unspecified: 0
eclassdirs: /usr/portage/eclass /usr/local/repositories/cross-toolchains/eclass
ignore_deprecated_profiles: false
layout: traditional
master_repository: gentoo
names_cache: /var/empty
newsdir: /usr/local/repositories/cross-toolchains/metadata/news
profile_eapi: 0
profiles: /usr/portage/profiles/default-linux/x86/2007.0/desktop
securitydir: /usr/local/repositories/cross-toolchains/metadata/glsa
setsdir: /usr/local/repositories/cross-toolchains/sets
sync:
sync_options:
use_manifest: use
write_cache: /var/empty

Repository keks:
format: ebuild
location: /usr/local/repositories/keks
append_repository_name_to_write_cache: true
binary_destination: false
binary_keywords:
binary_uri_prefix:
builddir: /var/tmp/paludis
cache: /var/empty
distdir: /usr/portage/distfiles
eapi_when_unknown: 0
eapi_when_unspecified: 0
eclassdirs: /usr/portage/eclass /usr/local/repositories/keks/eclass
ignore_deprecated_profiles: false
layout: traditional
master_repository: gentoo
names_cache: /var/empty
newsdir: /usr/local/repositories/keks/metadata/news
profile_eapi: 0
profiles: /usr/portage/profiles/default-linux/x86/2007.0/desktop
securitydir: /usr/local/repositories/keks/metadata/glsa
setsdir: /usr/local/repositories/keks/sets
sync: svn+https://svn.keksbude.net/repos/keks-overlay/app-paludis/plop/
sync_options:
use_manifest: use
write_cache: /var/empty

Repository local:
format: ebuild
location: /usr/local/portage
append_repository_name_to_write_cache: true
binary_destination: false
binary_keywords:
binary_uri_prefix:
builddir: /var/tmp/paludis
cache: /var/empty
distdir: /usr/portage/distfiles
eapi_when_unknown: 0
eapi_when_unspecified: 0
eclassdirs: /usr/portage/eclass /usr/local/portage/eclass
ignore_deprecated_profiles: false
layout: traditional
master_repository: gentoo
names_cache: /var/empty
newsdir: /usr/local/portage/metadata/news
profile_eapi: 0
profiles: /usr/portage/profiles/default-linux/x86/2007.0/desktop
securitydir: /usr/local/portage/metadata/glsa
setsdir: /usr/local/portage/sets
sync:
sync_options:
use_manifest: use
write_cache: /var/empty

Repository paludis-extras:
format: ebuild
location: /usr/portage/local/paludis
append_repository_name_to_write_cache: true
binary_destination: false
binary_keywords:
binary_uri_prefix:
builddir: /var/tmp/paludis
cache: /var/empty
distdir: /usr/portage/distfiles
eapi_when_unknown: 0
eapi_when_unspecified: 0
eclassdirs: /usr/portage/eclass /usr/portage/local/paludis/eclass
ignore_deprecated_profiles: false
layout: traditional
master_repository: gentoo
names_cache: /var/empty
newsdir: /usr/portage/local/paludis/metadata/news
profile_eapi: 0
profiles: /usr/portage/profiles/default-linux/x86/2007.0/desktop
securitydir: /usr/portage/local/paludis/metadata/glsa
setsdir: /usr/portage/local/paludis/sets
sync: rsync://drzile.dyndns.org/paludis-extras
sync_options:
use_manifest: use
write_cache: /var/empty

Repository paludis-overlay:
format: ebuild
location: /var/paludis/repositories
append_repository_name_to_write_cache: true
binary_destination: false
binary_keywords:
binary_uri_prefix:
builddir: /var/tmp/paludis
cache: /var/empty
distdir: /usr/portage/distfiles
eapi_when_unknown: 0
eapi_when_unspecified: 0
eclassdirs: /usr/portage/eclass /var/paludis/repositories/eclass
ignore_deprecated_profiles: false
layout: traditional
master_repository: gentoo
names_cache: /var/empty
newsdir: /var/paludis/repositories/metadata/news
profile_eapi: 0
profiles: /usr/portage/profiles/default-linux/x86/2007.0/desktop
securitydir: /var/paludis/repositories/metadata/glsa
setsdir: /var/paludis/repositories/sets
sync: svn://svn.pioto.org/paludis/overlay
sync_options:
use_manifest: use
write_cache: /var/empty

Repository sunrise:
format: ebuild
location: /usr/portage/local/layman/sunrise
append_repository_name_to_write_cache: true
binary_destination: false
binary_keywords:
binary_uri_prefix:
builddir: /var/tmp/paludis
cache: /var/empty
distdir: /usr/portage/distfiles
eapi_when_unknown: 0
eapi_when_unspecified: 0
eclassdirs: /usr/portage/eclass /usr/portage/local/layman/sunrise/eclass
ignore_deprecated_profiles: false
layout: traditional
master_repository: gentoo
names_cache: /var/empty
newsdir: /usr/portage/local/layman/sunrise/metadata/news
profile_eapi: 0
profiles: /usr/portage/profiles/default-linux/x86/2007.0/desktop
securitydir: /usr/portage/local/layman/sunrise/metadata/glsa
setsdir: /usr/portage/local/layman/sunrise/sets
sync: svn+http://overlays.gentoo.org/svn/proj/sunrise/reviewed
sync_options:
use_manifest: use
write_cache: /var/empty

Repository synce:
format: ebuild
location: /var/paludis/repositories/synce
append_repository_name_to_write_cache: true
binary_destination: false
binary_keywords:
binary_uri_prefix:
builddir: /var/tmp/paludis
cache: /var/empty
distdir: /usr/portage/distfiles
eapi_when_unknown: 0
eapi_when_unspecified: 0
eclassdirs: /usr/portage/eclass /var/paludis/repositories/synce/eclass
ignore_deprecated_profiles: false
layout: traditional
master_repository: gentoo
names_cache: /var/empty
newsdir: /var/paludis/repositories/synce/metadata/news
profile_eapi: 0
profiles: /usr/portage/profiles/default-linux/x86/2007.0/desktop
securitydir: /var/paludis/repositories/synce/metadata/glsa
setsdir: /var/paludis/repositories/synce/sets
sync: svn+https://synce.svn.sourceforge.net/svnroot/synce/dist/gentoo
sync_options:
use_manifest: use
write_cache: /var/empty

No packages were specified on the command line, so detailed information is not
available (Paludis can display detailed information for both installed and
installable packages).

Discussion

  • Maciek Grela
    Maciek Grela
    2008-05-13

    File #1 causing the crash

     
    Attachments
  • Maciek Grela
    Maciek Grela
    2008-05-13

    Logged In: YES
    user_id=645965
    Originator: YES

    File Added: SCREN596.WMF

     
  • Maciek Grela
    Maciek Grela
    2008-05-13

    File #2 causing the crash

     
    Attachments
  • Maciek Grela
    Maciek Grela
    2008-05-13

    • priority: 5 --> 7
     
  • Yeah, I have the same problem with a set of files. Also Gentoo(!) distro, so probably a fontconfig bug??? This should probably be sent to b.g.o, no?