Closed dscharrer closed 11 years ago
Can you reproduce this crash when in windowed mode by just changing the resolution you are running at as well?
I just checked, and changing the resolution (both in windowed or fullscreen mode) also crashes the game.
Can you post your OS details please, it sounds like something is pinning hw.so open.
You mean the system information linked in the OP?
Processor Information:
Vendor: AuthenticAMD
Speed: 2400 Mhz
4 logical processors
4 physical processors
HyperThreading: Unsupported
FCMOV: Supported
SSE2: Supported
SSE3: Supported
SSSE3: Supported
SSE4a: Supported
SSE41: Unsupported
SSE42: Unsupported
Network Information:
Network Speed:
Operating System Version:
"Gentoo Base System release 2.2" (64 bit)
Kernel Name: Linux
Kernel Version: 3.6.11-gentoo
X Server vendor: The X.Org Foundation
X Server release: 11204000
Video Card:
Driver: ATI Technologies Inc. AMD Radeon HD 7900 Series
Driver Version: 4.2.11762 Compatibility Profile Context
Desktop Color Depth: 24 bits per pixel
Monitor Refresh Rate: 59 Hz
VendorID: 0x1002
DeviceID: 0x679a
Number of Monitors: 1
Number of Logical Video Cards: 1
Primary Display Resolution: 1920 x 1200
Desktop Resolution: 1920 x 1200
Primary Display Size: 20.43" x 12.76" (24.06" diag)
51.9cm x 32.4cm (61.1cm diag)
Primary VRAM Not Detected
Sound card:
Audio device: Realtek ALC889A
Memory:
RAM: 7989 Mb
Miscellaneous:
UI Language: English
LANG: en_US.utf8
Microphone: Not set
Total Hard Disk Space Available: 240239 Mb
Largest Free Hard Disk Block: 19507 Mb
Installed software:
Recent Failure Reports:
Thu Jan 24 21:52:30 2013 GMT: file ''/tmp/dumps/assert_20130124225224_1.dmp'', upload yes: ''CrashID=bp-ce39f05a-f58f-45a7-b283-d80022130124''
Thu Jan 24 21:59:54 2013 GMT: file ''/tmp/dumps/assert_20130124225949_1.dmp'', upload yes: ''CrashID=bp-5dd3221d-3bf2-4248-a989-e3dd82130124''
Thu Jan 24 22:04:31 2013 GMT: file ''/tmp/dumps/assert_20130124230427_1.dmp'', upload yes: ''CrashID=bp-d16c8729-8e19-45d2-ace9-823dd2130124''
Thu Jan 24 22:17:27 2013 GMT: file ''/tmp/dumps/assert_20130124231720_1.dmp'', upload yes: ''CrashID=bp-e591a72f-4b6b-4add-be89-e53202130124''
Thu Jan 24 22:34:51 2013 GMT: file ''/tmp/dumps/assert_20130124233442_1.dmp'', upload yes: ''CrashID=bp-71c60b0f-a874-452b-8f85-d4f032130124''
Thu Jan 24 22:35:22 2013 GMT: file ''/tmp/dumps/assert_20130124233517_1.dmp'', upload yes: ''CrashID=bp-149c14d6-e4db-4db3-9a01-310142130124''
Thu Jan 24 23:23:27 2013 GMT: file ''/tmp/dumps/assert_20130125002321_1.dmp'', upload yes: ''CrashID=bp-9259264f-4f2b-4837-bab0-a1f2a2130124''
Thu Jan 24 23:43:05 2013 GMT: file ''/tmp/dumps/crash_20130125004303_1.dmp'', upload yes: ''CrashID=bp-49d88888-d4f6-456b-b65c-e06e62130124''
Thu Jan 24 23:56:48 2013 GMT: file ''/tmp/dumps/assert_20130125005642_1.dmp'', upload yes: ''CrashID=bp-e696cff2-2e51-48c7-a518-001b12130124''
Fri Jan 25 00:12:37 2013 GMT: file ''/tmp/dumps/assert_20130125011233_1.dmp'', upload yes: ''CrashID=bp-f758bc53-8302-44b0-b487-5e5642130124''
Fri Jan 25 00:13:40 2013 GMT: file ''/tmp/dumps/assert_20130125011336_1.dmp'', upload yes: ''CrashID=bp-08da7e0f-f5d9-4328-acdb-c9f652130124''
Fri Jan 25 00:19:46 2013 GMT: file ''/tmp/dumps/assert_20130125011942_1.dmp'', upload yes: ''CrashID=bp-39641937-0977-4193-81f5-aba5b2130124''
Fri Jan 25 00:27:44 2013 GMT: file ''/tmp/dumps/assert_20130125012740_1.dmp'', upload yes: ''CrashID=bp-dbb57aaf-9a08-482b-bfae-22c832130124''
Anything else?
Many thanks for porting Half-Life/GoldSrc :)
Ah ha, Gentoo hey. Can you get the crash in GDB again and then post the output of "info sharedlibrary" please.
Sure:
Program received signal SIGSEGV, Segmentation fault.
Q_strlen (str=0xef3c40e0 <Address 0xef3c40e0 out of bounds>) at ../engine/common.c:212
212 ../engine/common.c: No such file or directory.
(gdb) info sharedlibrary
From To Syms Read Shared Object Library
0x4eb378e0 0x4eb5039c Yes /lib/ld-linux.so.2
No linux-gate.so.1
0xf7f0e880 0xf7f8179c Yes /usr/lib/gcc/x86_64-pc-linux-gnu/4.8.0-pre9999/32/libstdc++.so.6
0x4ed28c00 0x4ed29b78 Yes /lib32/libdl.so.2
0x4ed0f5e0 0x4ed1bfd8 Yes /lib32/libpthread.so.0
0x4eb755a0 0x4ecaafbc Yes /lib32/libc.so.6
0x4eee3760 0x4ef0c118 Yes /lib32/libm.so.6
0x46514520 0x46529084 Yes /usr/lib/gcc/x86_64-pc-linux-gnu/4.8.0-pre9999/32/libgcc_s.so.1
0xf6a68f20 0xf6bd2418 Yes /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so
0xf7fcb5c0 0xf7fd5d74 Yes (*) ./libsteam_api.so
0xf6946b50 0xf6967354 Yes ./vgui.so
0xf68559c0 0xf68f4db8 Yes (*) ./libsdl2-2.0.so.0
0xf67d96e0 0xf682b358 Yes (*) ./libMiles.so
0x488f72e0 0x48912a38 Yes (*) /usr/lib32/libfontconfig.so.1
0x4845d9c0 0x484c7e58 Yes (*) /usr/lib32/libfreetype.so.6
0x46ae3df0 0x46b45e48 Yes (*) /usr/lib32/libGL.so.1
0x4ee3bde0 0x4ee3f898 Yes /lib32/librt.so.1
0xf673ef80 0xf67799d8 Yes (*) /usr/lib32/libopenal.so.1
0x484f38f0 0x484fff18 Yes (*) /lib32/libz.so.1
0x48924fe0 0x489321e8 Yes (*) /lib32/libbz2.so.1
0x488c9200 0x488e2ae8 Yes (*) /usr/lib32/libexpat.so.1
0x483a5980 0x483afcc8 Yes (*) /usr/lib32/libXext.so.6
0x41f4ff60 0x41f53f20 Yes /usr/lib32/libatiuki.so.1
0x485372b0 0x485c2ea8 Yes (*) /usr/lib32/libX11.so.6
0x489535c0 0x48962d28 Yes (*) /usr/lib32/libxcb.so.1
0x489689e0 0x48969748 Yes (*) /usr/lib32/libXau.so.6
0x48865e80 0x48867aa8 Yes (*) /usr/lib32/libXdmcp.so.6
0x4850aef0 0x48510528 Yes (*) /usr/lib32/libXcursor.so.1
0x48941400 0x48946ea8 Yes (*) /usr/lib32/libXrender.so.1
0x48b83f60 0x48b862d8 Yes (*) /usr/lib32/libXfixes.so.3
0x484ec7d0 0x484ed1f8 Yes (*) /usr/lib32/libXinerama.so.1
0x48b6e960 0x48b78aa8 Yes (*) /usr/lib32/libXi.so.6
0x488bc500 0x488c20a8 Yes (*) /usr/lib32/libXrandr.so.2
0xf6737930 0xf67386c8 Yes (*) /usr/lib32/libXss.so.1
0xf6731b60 0xf6734578 Yes (*) /usr/lib32/libXxf86vm.so.1
0xf44a2b40 0xf5e7d38c Yes (*) /usr/lib32/dri/fglrx_dri.so
0xf40ad600 0xf40e9f80 Yes /usr/lib32/libatiadlxx.so
0xf2af0380 0xf35428ec Yes (*) /home/dscharrer/Games/Steam/linux32/steamclient.so
0xf20e38e0 0xf216c7e8 Yes (*) /usr/lib32/libasound.so.2
0x489ad480 0x489b65a8 Yes (*) /lib32/libudev.so.0
0xef0b9170 0xef1d3884 Yes /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/chromehtml.so
0xec7996c0 0xede8e148 Yes (*) ./libcef.so
0xf21b5b10 0xf21c177c Yes ./libtier0.so
0xf2199ca0 0xf21a6dc8 Yes ./libvstdlib.so
0x4658e800 0x4682e928 Yes (*) /usr/lib32/libgtk-x11-2.0.so.0
0x46922340 0x4697f1d8 Yes (*) /usr/lib32/libgdk-x11-2.0.so.0
0x46533600 0x46538a28 Yes (*) /usr/lib32/libpangocairo-1.0.so.0
0x489bf260 0x489d2b88 Yes (*) /usr/lib32/libgdk_pixbuf-2.0.so.0
0x469b5360 0x46a5df98 Yes (*) /usr/lib32/libcairo.so.2
0x4830f9f0 0x48331b38 Yes (*) /usr/lib32/libpango-1.0.so.0
0x4835f290 0x4838fd78 Yes (*) /usr/lib32/libgobject-2.0.so.0
0x4820eaf0 0x482abc88 Yes (*) /usr/lib32/libglib-2.0.so.0
0xec4b70d0 0xec59fab8 Yes (*) /usr/lib32/libnss3.so
0xec489840 0xec4989e8 Yes (*) /usr/lib32/libnssutil3.so
0xec465180 0xec47f108 Yes (*) /usr/lib32/libsmime3.so
0xf7fc1f00 0xf7fc38a8 Yes (*) /usr/lib32/libplc4.so
0xec4320b0 0xec454ef8 Yes (*) /usr/lib32/libnspr4.so
0xec3f8cf0 0xec4225b8 Yes (*) /usr/lib32/libdbus-1.so.3
0xec3d2960 0xec3ed7d8 Yes (*) /usr/lib32/libpng12.so.0
0xec38a320 0xec3c2908 Yes (*) /usr/lib32/libcups.so.2
0xec30aaf0 0xec362f28 Yes (*) /usr/lib32/libgcrypt.so.11
0x489a5890 0x489a6348 Yes (*) /usr/lib32/libXcomposite.so.1
0x4839d800 0x4839e1b8 Yes (*) /usr/lib32/libXdamage.so.1
0x48974a50 0x48982328 Yes (*) /usr/lib32/libatk-1.0.so.0
0x48663350 0x48733118 Yes (*) /usr/lib32/libgio-2.0.so.0
0x488402a0 0x4885d068 Yes (*) /usr/lib32/libpangoft2-1.0.so.0
0x481f4c30 0x481f5ce8 Yes (*) /usr/lib32/libgmodule-2.0.so.0
0x48871500 0x48890ed8 Yes (*) /usr/lib32/libpng15.so.15
0x489def50 0x48a5e8d8 Yes (*) /usr/lib32/libpixman-1.so.0
0x488a34b0 0x488b3468 Yes (*) /usr/lib32/libEGL.so.1
0x48352430 0x48352618 Yes (*) /usr/lib32/libgthread-2.0.so.0
0x48349f50 0x4834d4e8 Yes (*) /usr/lib32/libffi.so.6
0xf7fbdb40 0xf7fbeb78 Yes (*) /usr/lib32/libplds4.so
0xec2d6760 0xec2ffd28 Yes (*) /usr/lib32/libgssapi_krb5.so.2
0xec2cb660 0xec2cbc58 Yes (*) /usr/lib32/libgpg-error.so.0
0x4f0f1e00 0x4f0ff3b8 Yes /lib32/libresolv.so.2
0x48b7e3a0 0x48b7e4f8 Yes (*) /usr/lib32/libX11-xcb.so.1
0x483b5330 0x483b6798 Yes (*) /usr/lib32/libxcb-dri2.so.0
0x48938d50 0x4893b0c8 Yes (*) /usr/lib32/libxcb-xfixes.so.0
0x4899cb90 0x489a0218 Yes (*) /usr/lib32/libxcb-render.so.0
0x48899b20 0x4889a7d8 Yes (*) /usr/lib32/libxcb-shape.so.0
0x4898f850 0x48995578 Yes (*) /usr/lib32/libdrm.so.2
0xec2277b0 0xec292ec8 Yes (*) /usr/lib32/libkrb5.so.3
---Type <return> to continue, or q <return> to quit---
0xec1f3cd0 0xec20bc08 Yes (*) /usr/lib32/libk5crypto.so.3
0xec1ede60 0xec1eeb88 Yes (*) /lib32/libcom_err.so.2
0xec1e68a0 0xec1ea1d8 Yes (*) /usr/lib32/libkrb5support.so.0
0xf7fb9ca0 0xf7fba968 Yes (*) /lib32/libkeyutils.so.1
0xea10e380 0xea20e398 Yes (*) /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/libffmpegsumo.so
0xe8e180e0 0xe8e1d318 Yes /lib32/libnss_compat.so.2
0xe84e8c40 0xe84f5c78 Yes /lib32/libnsl.so.1
0xeb601ea0 0xeb608578 Yes /lib32/libnss_nis.so.2
0xe8e0afa0 0xe8e12af8 Yes /lib32/libnss_files.so.2
0xe8e436e0 0xe8e43c88 Yes (*) /usr/lib32/alsa-lib/libasound_module_rate_speexrate.so
0xe8e345b0 0xe8e400e8 Yes (*) /usr/lib32/libspeexdsp.so.1
0xe8462060 0xe84958a8 Yes (*) /usr/lib32/libpulse.so.0
0xeac029f0 0xeac06228 Yes (*) /usr/lib32/libjson.so.0
0xe8411950 0xe844ba78 Yes (*) /usr/lib32/libpulsecommon-1.1.so
0xe7aea6f0 0xe7af8928 Yes (*) /usr/lib32/libICE.so.6
0xe9804460 0xe9808778 Yes (*) /usr/lib32/libSM.so.6
0xe8e2dee0 0xe8e308b8 Yes (*) /usr/lib32/libXtst.so.6
0xe7a824e0 0xe7ad2098 Yes (*) /usr/lib32/libsndfile.so.1
0xe7a510b0 0xe7a79908 Yes (*) /usr/lib32/libFLAC.so.8
0xe658ebb0 0xe6591038 Yes (*) /usr/lib32/libvorbisenc.so.2
0xe7a21690 0xe7a35c98 Yes (*) /usr/lib32/libvorbis.so.0
0xe7a19440 0xe7a1be88 Yes (*) /usr/lib32/libogg.so.0
0xe7a11ef0 0xe7a156e8 Yes (*) /usr/lib32/libgdbm.so.3
0xe7a0cfd0 0xe7a0eae8 Yes (*) /lib32/libuuid.so.1
0xf7fe4940 0xf7ff0ef8 Yes /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/filesystem_stdio.so
(*): Shared library is missing debugging information.
Hm, it doesn't seem to crash when resizing the window by dragging the corners though, only when changing fullscreen/windowed mode or resolution in the in-game settings.
0xf6a68f20 0xf6bd2418 Yes /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so
That line is the problem, something about Gentoo is increasing the refcount on our engine binary, so when we unload it on restart it doesn't actually go away... I'm adding code to try to force the issue, but if you find out why Gentoo causes extra module references that would be interesting.
I think I know what is going on:
BZ2_*
symbolslibfreetype.so.6
and libfontconfig.so.1
app-emulation/emul-linux-x86-xlibs-20121202
package)dlopen()
call for hw.so
, the BZ2_*
exports in hw.so overwrite those in libbzip2.so (even without RTLD_GLOBAL
) and are linked against the BZ2_*
imports in libfreetype.so.6
libfreetype.so.6
(and libbzip2.so
) now depends on hw.so
hw.so
can't be unloaded because libfreetype.so.6
is still used elsewhereFrom the LD_DEBUG=all
output:
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_crc32Table'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_rNums'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_hbMakeCodeLengths'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzlibVersion'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzDecompressInit'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzDecompressEnd'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzReadClose'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzWriteOpen'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzCompressInit'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzCompressEnd'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_hbCreateDecodeTables'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_decompress'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzWriteClose'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzCompress'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzWrite'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_compressBlock'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bsInitWrite'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzDecompress'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_blockSort'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzWriteClose64'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_indexIntoF'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_hbAssignCodes'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzReadOpen'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzRead'
3113: binding file /lib32/libbz2.so.1 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bz__AssertH__fail'
3113: binding file /usr/lib32/libfreetype.so.6 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzDecompressInit'
3113: binding file /usr/lib32/libfreetype.so.6 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzDecompressEnd'
3113: binding file /usr/lib32/libfreetype.so.6 [0] to /home/dscharrer/Games/Steam/SteamApps/common/Half-Life/hw.so [0]: normal symbol `BZ2_bzDecompress'
Let me know if you need the full LD_DEBUG=all
log - it's over 100 MiB.
readelf
confirms the BZ2_*
exports in hw.so
(note the indices before the symbol names instead of UND
for imports):
$ readelf -s hw.so | grep BZ2
94: 002045d8 354 FUNC GLOBAL DEFAULT 10 BZ2_bzDecompress
107: 00205670 66 FUNC GLOBAL DEFAULT 10 BZ2_bzread
129: 00204b24 596 FUNC GLOBAL DEFAULT 10 BZ2_bzWriteClose64
289: 00202f58 517 FUNC GLOBAL DEFAULT 10 BZ2_bzCompressInit
341: 00208f18 671 FUNC GLOBAL DEFAULT 10 BZ2_compressBlock
342: 002056b4 53 FUNC GLOBAL DEFAULT 10 BZ2_bzwrite
347: 00203798 134 FUNC GLOBAL DEFAULT 10 BZ2_bzCompressEnd
908: 00205774 38 FUNC GLOBAL DEFAULT 10 BZ2_bzerror
1392: 00205630 29 FUNC GLOBAL DEFAULT 10 BZ2_bzopen
1570: 0020e3a8 234 FUNC GLOBAL DEFAULT 10 BZ2_hbCreateDecodeTables
1624: 002057d0 25 FUNC GLOBAL DEFAULT 10 BZ2_bsInitWrite
1655: 002c7740 2048 OBJECT GLOBAL DEFAULT 21 BZ2_rNums
2118: 00205248 254 FUNC GLOBAL DEFAULT 10 BZ2_bzBuffToBuffCompress
3071: 00202e60 72 FUNC GLOBAL DEFAULT 10 BZ2_bz__AssertH__fail
3572: 0020473c 148 FUNC GLOBAL DEFAULT 10 BZ2_bzDecompressEnd
3664: 00203820 241 FUNC GLOBAL DEFAULT 10 BZ2_bzDecompressInit
3913: 002051c4 132 FUNC GLOBAL DEFAULT 10 BZ2_bzReadGetUnused
3965: 00205650 29 FUNC GLOBAL DEFAULT 10 BZ2_bzdopen
3999: 002c7340 1024 OBJECT GLOBAL DEFAULT 21 BZ2_crc32Table
4017: 0020579c 52 FUNC GLOBAL DEFAULT 10 BZ2_indexIntoF
4284: 00203628 367 FUNC GLOBAL DEFAULT 10 BZ2_bzCompress
4512: 00205348 245 FUNC GLOBAL DEFAULT 10 BZ2_bzBuffToBuffDecompres
5220: 00205440 6 FUNC GLOBAL DEFAULT 10 BZ2_bzlibVersion
6119: 00204af0 51 FUNC GLOBAL DEFAULT 10 BZ2_bzWriteClose
6181: 0020ddb4 349 FUNC GLOBAL DEFAULT 10 BZ2_blockSort
6289: 00204d78 420 FUNC GLOBAL DEFAULT 10 BZ2_bzReadOpen
6297: 00204f9c 550 FUNC GLOBAL DEFAULT 10 BZ2_bzRead
6323: 0020df20 1085 FUNC GLOBAL DEFAULT 10 BZ2_hbMakeCodeLengths
6561: 002056ec 3 FUNC GLOBAL DEFAULT 10 BZ2_bzflush
6655: 00209204 12049 FUNC GLOBAL DEFAULT 10 BZ2_decompress
7133: 0020e360 72 FUNC GLOBAL DEFAULT 10 BZ2_hbAssignCodes
7314: 002056f0 131 FUNC GLOBAL DEFAULT 10 BZ2_bzclose
7571: 0020480c 325 FUNC GLOBAL DEFAULT 10 BZ2_bzWriteOpen
7717: 00204954 412 FUNC GLOBAL DEFAULT 10 BZ2_bzWrite
7773: 00204f1c 128 FUNC GLOBAL DEFAULT 10 BZ2_bzReadClose
1363: 002045d8 354 FUNC GLOBAL DEFAULT 10 BZ2_bzDecompress
1376: 00205670 66 FUNC GLOBAL DEFAULT 10 BZ2_bzread
1398: 00204b24 596 FUNC GLOBAL DEFAULT 10 BZ2_bzWriteClose64
1558: 00202f58 517 FUNC GLOBAL DEFAULT 10 BZ2_bzCompressInit
1610: 00208f18 671 FUNC GLOBAL DEFAULT 10 BZ2_compressBlock
1611: 002056b4 53 FUNC GLOBAL DEFAULT 10 BZ2_bzwrite
1616: 00203798 134 FUNC GLOBAL DEFAULT 10 BZ2_bzCompressEnd
2177: 00205774 38 FUNC GLOBAL DEFAULT 10 BZ2_bzerror
2661: 00205630 29 FUNC GLOBAL DEFAULT 10 BZ2_bzopen
2839: 0020e3a8 234 FUNC GLOBAL DEFAULT 10 BZ2_hbCreateDecodeTables
2893: 002057d0 25 FUNC GLOBAL DEFAULT 10 BZ2_bsInitWrite
2924: 002c7740 2048 OBJECT GLOBAL DEFAULT 21 BZ2_rNums
3387: 00205248 254 FUNC GLOBAL DEFAULT 10 BZ2_bzBuffToBuffCompress
4340: 00202e60 72 FUNC GLOBAL DEFAULT 10 BZ2_bz__AssertH__fail
4841: 0020473c 148 FUNC GLOBAL DEFAULT 10 BZ2_bzDecompressEnd
4933: 00203820 241 FUNC GLOBAL DEFAULT 10 BZ2_bzDecompressInit
5182: 002051c4 132 FUNC GLOBAL DEFAULT 10 BZ2_bzReadGetUnused
5234: 00205650 29 FUNC GLOBAL DEFAULT 10 BZ2_bzdopen
5268: 002c7340 1024 OBJECT GLOBAL DEFAULT 21 BZ2_crc32Table
5286: 0020579c 52 FUNC GLOBAL DEFAULT 10 BZ2_indexIntoF
5553: 00203628 367 FUNC GLOBAL DEFAULT 10 BZ2_bzCompress
5781: 00205348 245 FUNC GLOBAL DEFAULT 10 BZ2_bzBuffToBuffDecompres
6489: 00205440 6 FUNC GLOBAL DEFAULT 10 BZ2_bzlibVersion
7388: 00204af0 51 FUNC GLOBAL DEFAULT 10 BZ2_bzWriteClose
7450: 0020ddb4 349 FUNC GLOBAL DEFAULT 10 BZ2_blockSort
7558: 00204d78 420 FUNC GLOBAL DEFAULT 10 BZ2_bzReadOpen
7566: 00204f9c 550 FUNC GLOBAL DEFAULT 10 BZ2_bzRead
7592: 0020df20 1085 FUNC GLOBAL DEFAULT 10 BZ2_hbMakeCodeLengths
7830: 002056ec 3 FUNC GLOBAL DEFAULT 10 BZ2_bzflush
7924: 00209204 12049 FUNC GLOBAL DEFAULT 10 BZ2_decompress
8402: 0020e360 72 FUNC GLOBAL DEFAULT 10 BZ2_hbAssignCodes
8583: 002056f0 131 FUNC GLOBAL DEFAULT 10 BZ2_bzclose
8840: 0020480c 325 FUNC GLOBAL DEFAULT 10 BZ2_bzWriteOpen
8986: 00204954 412 FUNC GLOBAL DEFAULT 10 BZ2_bzWrite
9042: 00204f1c 128 FUNC GLOBAL DEFAULT 10 BZ2_bzReadClose
Everything works on Ubuntu (for now) because their libfreetype.so.6
and libfontconfig.so.1
libraries are compiled without bzip2
support, so the BZ2_*
symbols in hw.so
aren't used there.
I also confirmed that LD_PRELOAD
ing /lib32/libbz2.so.1
works around the issue by ensuring that the BZ2_*
symbols in libbz2 take priority.
The client binaries probably should be compiled with the -fvisibility=hidden
gcc flag and then only export the needed symbols.
Steps to reproduce:
The crash happens after the change, so the desired mode will be in effect the next time when starting Half-Life, making this only a minor issue for me
It doesn't seem to be uploading a crash dump:
Here is a gdb backtrace from switching from fullscreen to windowed mode:
system information