[Linux] 0.83 Segmentation fault when starting

Bugs and Suggestions in XnView MP or XnConvert MP which have been resolved.

Moderators: XnTriq, helmut, xnview

Post Reply
User avatar
mindeunix
Posts: 6
Joined: Thu Jan 05, 2017 10:23 pm
Location: Lithuania
Contact:

[Linux] 0.83 Segmentation fault when starting

Post by mindeunix »

XnView MP fails to start and hard to say whats wrong. GNU gdb output is not useful (missing debug symbols):

Code: Select all

#0  0x088fd2ec in ?? ()
No symbol table info available.
#1  0xae599285 in ?? () from /usr/lib/libexpat.so.1
No symbol table info available.
#2  0xae58566d in ?? () from /usr/lib/libexpat.so.1
No symbol table info available.
#3  0xae5874b2 in ?? () from /usr/lib/libexpat.so.1
No symbol table info available.
#4  0xae58a891 in XML_ParseBuffer () from /usr/lib/libexpat.so.1
No symbol table info available.
#5  0xae720f4e in FcConfigParseAndLoad () from /usr/lib/libfontconfig.so.1
No symbol table info available.
#6  0xae713b40 in ?? () from /usr/lib/libfontconfig.so.1
No symbol table info available.
#7  0xae713dbd in ?? () from /usr/lib/libfontconfig.so.1
No symbol table info available.
#8  0xae713e4c in FcInitReinitialize () from /usr/lib/libfontconfig.so.1
No symbol table info available.
#9  0xae83bd37 in ?? () from /home/minde/Downloads/xnview/XnView/lib/libQt5XcbQpa.so.5
No symbol table info available.
#10 0xb72be5f9 in ?? () from /home/minde/Downloads/xnview/XnView/lib/libQt5Gui.so.5
No symbol table info available.
#11 0xb72c0245 in QFontDatabase::findFont(QFontDef const&, int) () from /home/minde/Downloads/xnview/XnView/lib/libQt5Gui.so.5
No symbol table info available.
#12 0xb72c0d1a in QFontDatabase::load(QFontPrivate const*, int) () from /home/minde/Downloads/xnview/XnView/lib/libQt5Gui.so.5
No symbol table info available.
#13 0xb729a6c8 in QFontPrivate::engineForScript(int) const () from /home/minde/Downloads/xnview/XnView/lib/libQt5Gui.so.5
No symbol table info available.
#14 0xb72b584f in QFontMetrics::height() const () from /home/minde/Downloads/xnview/XnView/lib/libQt5Gui.so.5
No symbol table info available.
#15 0x083d258c in ?? ()
No symbol table info available.
#16 0x083ea15b in ?? ()
No symbol table info available.
#17 0x083eb615 in ?? ()
No symbol table info available.
#18 0x080d6066 in ?? ()
No symbol table info available.
#19 0x080d7308 in ?? ()
No symbol table info available.
#20 0x080d9d78 in ?? ()
No symbol table info available.
#21 0x084b11fe in ?? ()
No symbol table info available.
#22 0x084bb574 in ?? ()
No symbol table info available.
#23 0x080af65e in ?? ()
No symbol table info available.
#24 0xb3e9e57e in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
#25 0x080b1bd9 in ?? ()
No symbol table info available.
Strace shows a bit more information:

Code: Select all

00:29:39.446571 [b77a5b35] write(5, "\1\0\0\0\0\0\0\0", 8) = 8 <0.000008>
00:29:39.446615 [b77a5b35] write(5, "\1\0\0\0\0\0\0\0", 8) = 8 <0.000008>
00:29:39.446657 [b77a5b35] write(5, "\1\0\0\0\0\0\0\0", 8) = 8 <0.000008>
00:29:39.446693 [b77a5b35] write(5, "\1\0\0\0\0\0\0\0", 8) = 8 <0.000008>
00:29:39.446745 [b77a5b35] write(5, "\1\0\0\0\0\0\0\0", 8) = 8 <0.000009>
00:29:39.446787 [b77a5b35] write(5, "\1\0\0\0\0\0\0\0", 8) = 8 <0.000009>
00:29:39.446824 [b77a5b35] write(5, "\1\0\0\0\0\0\0\0", 8) = 8 <0.000008>
00:29:39.447114 [b77a5b35] inotify_init1(IN_CLOEXEC) = 8 <0.000017>
00:29:39.447163 [b77a5b35] fcntl64(8, F_SETFD, FD_CLOEXEC) = 0 <0.000009>
00:29:39.448035 [b77a5b35] write(1, "ThumbLoaderThread :: stop()\n", 28ThumbLoaderThread :: stop()
) = 28 <0.000012>
00:29:39.448081 [b77a5b35] write(1, "### ThumbLoaderThread :: stop() ok\n", 35### ThumbLoaderThread :: stop() ok
) = 35 <0.000011>
00:29:39.448439 [b77a5b35] write(1, "ThumbLoaderThread :: stop()\n", 28ThumbLoaderThread :: stop()
) = 28 <0.000012>
00:29:39.448476 [b77a5b35] write(1, "### ThumbLoaderThread :: stop() ok\n", 35### ThumbLoaderThread :: stop() ok
) = 35 <0.000010>
00:29:39.449042 [b77a5b35] write(1, "ThumbLoaderThread :: stop()\n", 28ThumbLoaderThread :: stop()
) = 28 <0.000011>
00:29:39.449081 [b77a5b35] write(1, "### ThumbLoaderThread :: stop() ok\n", 35### ThumbLoaderThread :: stop() ok
) = 35 <0.000010>
00:29:39.449214 [b77a5b35] access("/etc/fonts/fonts.conf", R_OK) = 0 <0.000022>
00:29:39.449275 [b77a5b35] stat64("/etc/fonts/fonts.conf", {st_dev=makedev(8, 2), st_ino=6564744, st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=8, st_size=2305, st_atime=2017-01-05T02:25:23+0200.594991881, st_mtime=2017-01-05T02:26:12+0200.424616056, st_ctime=2017-01-05T02:26:12+0200.424616056}) = 0 <0.000011>
00:29:39.449334 [b77a5b35] open("/etc/fonts/fonts.conf", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 9 <0.000016>
00:29:39.449444 [b77a5b35] read(9, "<?xml version=\"1.0\"?>\n<!DOCTYPE fontconfig SYSTEM \"fonts.dtd\">\n<!-- /etc/fonts/fonts.conf file to configure system font access -->\n<fontconfig>\n\n<!--\n\tDO NOT EDIT THIS FILE.\n\tIT WILL BE REPLACED WHEN FONTCONFIG IS UPDATED.\n\tLOCAL CHANGES BELONG IN 'local.conf'.\n\n\tThe intent of this standard configuration file is to be adequate for\n\tmost environments.  If you have a reasonably normal environment and\n\thave found problems with this configuration, they are probably\n\tthings that others will also want fixed.  Please submit any\n\tproblems to the fontconfig bugzilla system located at fontconfig.org\n\n\tNote that the normal 'make install' procedure for fontconfig is to\n\treplace any existing fonts.conf file with the new version.  Place\n\tany local customizations in local.conf which this file references.\n\n\tKeith Packard\n-->\n\n<!-- Font directory list -->\n\n\t<dir>/usr/share/fonts</dir>\n\n\t<dir prefix=\"xdg\">fonts</dir>\n\t<!-- the following element will be removed in the future -->\n\t<dir>~/.fonts</dir>\n\n<!"..., 8192) = 2305 <0.000014>
00:29:39.449525 [088fd2ec] --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x1} ---
00:29:40.601674 [????????] +++ killed by SIGSEGV (core dumped) +++
as I understand, segmentation fault happens after XnView MP reads the /etc/fonts/fonts.conf file? The Expat XML validator does not detect any problems.

Code: Select all

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- /etc/fonts/fonts.conf file to configure system font access -->
<fontconfig>

<!--
	DO NOT EDIT THIS FILE.
	IT WILL BE REPLACED WHEN FONTCONFIG IS UPDATED.
	LOCAL CHANGES BELONG IN 'local.conf'.

	The intent of this standard configuration file is to be adequate for
	most environments.  If you have a reasonably normal environment and
	have found problems with this configuration, they are probably
	things that others will also want fixed.  Please submit any
	problems to the fontconfig bugzilla system located at fontconfig.org

	Note that the normal 'make install' procedure for fontconfig is to
	replace any existing fonts.conf file with the new version.  Place
	any local customizations in local.conf which this file references.

	Keith Packard
-->

<!-- Font directory list -->

	<dir>/usr/share/fonts</dir>

	<dir prefix="xdg">fonts</dir>
	<!-- the following element will be removed in the future -->
	<dir>~/.fonts</dir>

<!--
  Accept deprecated 'mono' alias, replacing it with 'monospace'
-->
	<match target="pattern">
		<test qual="any" name="family">
			<string>mono</string>
		</test>
		<edit name="family" mode="assign" binding="same">
			<string>monospace</string>
		</edit>
	</match>

<!--
  Accept alternate 'sans serif' spelling, replacing it with 'sans-serif'
-->
	<match target="pattern">
		<test qual="any" name="family">
			<string>sans serif</string>
		</test>
		<edit name="family" mode="assign" binding="same">
			<string>sans-serif</string>
		</edit>
	</match>

<!--
  Accept deprecated 'sans' alias, replacing it with 'sans-serif'
-->
	<match target="pattern">
		<test qual="any" name="family">
			<string>sans</string>
		</test>
		<edit name="family" mode="assign" binding="same">
			<string>sans-serif</string>
		</edit>
	</match>

<!--
  Load local system customization file
-->
	<include ignore_missing="yes">conf.d</include>

<!-- Font cache directory list -->

	<cachedir>/var/cache/fontconfig</cachedir>
	<cachedir prefix="xdg">fontconfig</cachedir>
	<!-- the following element will be removed in the future -->
	<cachedir>~/.fontconfig</cachedir>

	<config>
<!--
  Rescan configuration every 30 seconds when FcFontSetList is called
 -->
		<rescan>
			<int>30</int>
		</rescan>
	</config>

</fontconfig>
Moving it solves the problem.


XnView MP - 0.83
Fontconfig - 2.12.1
Expat - 2.2.0
Gentoo Linux-4.9 x86
"Those who deny freedom to others deserve it not for themselves." - Abraham Lincoln
User avatar
mindeunix
Posts: 6
Joined: Thu Jan 05, 2017 10:23 pm
Location: Lithuania
Contact:

Re: [Linux] 0.83 Segmentation fault

Post by mindeunix »

GDB output again, with debug symbols this time https://p.defau.lt/?s_U0HatCXuGG9Ivxl63SxQ
"Those who deny freedom to others deserve it not for themselves." - Abraham Lincoln
User avatar
mindeunix
Posts: 6
Joined: Thu Jan 05, 2017 10:23 pm
Location: Lithuania
Contact:

Re: [Linux] 0.83 Segmentation fault

Post by mindeunix »

PING
"Those who deny freedom to others deserve it not for themselves." - Abraham Lincoln
User avatar
xnview
Author of XnView
Posts: 43326
Joined: Mon Oct 13, 2003 7:31 am
Location: France
Contact:

Re: [Linux] 0.83 Segmentation fault

Post by xnview »

sorry but currently i have no Gentoo to test
Pierre.
User avatar
mindeunix
Posts: 6
Joined: Thu Jan 05, 2017 10:23 pm
Location: Lithuania
Contact:

Re: [Linux] 0.83 Segmentation fault

Post by mindeunix »

xnview wrote:sorry but currently i have no Gentoo to test
Okay, maybe I can test something ?

even with empty fonts.conf file XnView crashes, so maybe worth to try compile different fontconfig version ?
"Those who deny freedom to others deserve it not for themselves." - Abraham Lincoln
User avatar
xnview
Author of XnView
Posts: 43326
Joined: Mon Oct 13, 2003 7:31 am
Location: France
Contact:

Re: [Linux] 0.83 Segmentation fault

Post by xnview »

mindeunix wrote:
xnview wrote:sorry but currently i have no Gentoo to test
Okay, maybe I can test something ?

even with empty fonts.conf file XnView crashes, so maybe worth to try compile different fontconfig version ?
please wait the 0.84 that use new QT version
Pierre.
User avatar
xnview
Author of XnView
Posts: 43326
Joined: Mon Oct 13, 2003 7:31 am
Location: France
Contact:

Re: [Linux] 0.83 Segmentation fault

Post by xnview »

mindeunix wrote:
xnview wrote:sorry but currently i have no Gentoo to test
Okay, maybe I can test something ?
Do you have tried this build
Pierre.
User avatar
mindeunix
Posts: 6
Joined: Thu Jan 05, 2017 10:23 pm
Location: Lithuania
Contact:

Re: [Linux] 0.83 Segmentation fault

Post by mindeunix »

xnview wrote:
mindeunix wrote:
xnview wrote:sorry but currently i have no Gentoo to test
Okay, maybe I can test something ?
Do you have tried this build
Yes, this build works great. Thanks and sorry for late reply (recently updated DKIM, SPF and somehow managed to miss a few new messages).
"Those who deny freedom to others deserve it not for themselves." - Abraham Lincoln
Post Reply