Dr!fter in l4d2 dedicated server on ubuntu 16.04, since i move on sourcemod 1.8 and upgrade your extension to version 2.1.1 dev, on shutdown server i have crash:
Code:
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0xe912292d in SourceHook::CPageAlloc::Free(void*) () from /home/l4d2_alt_coop/serverfiles/left4dead2/addons/metamod/bin/metamod.2.l4d2.so
[Current thread is 1 (Thread 0xf73df700 (LWP 60259))]
#0 0xe912292d in SourceHook::CPageAlloc::Free(void*) () from /home/l4d2_alt_coop/serverfiles/left4dead2/addons/metamod/bin/metamod.2.l4d2.so
#1 0x09527bf8 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
No symbol table info available.
eax 0x0 0
ecx 0x952b968 156416360
edx 0xe9121770 -384690320
ebx 0x10cc8df0 281841136
esp 0xfff1e470 0xfff1e470
ebp 0xe9143180 0xe9143180
esi 0xe9143d98 -384549480
edi 0x10e169f8 283208184
eip 0xe912292d 0xe912292d <SourceHook::CPageAlloc::Free(void*)+13>
eflags 0x210282 [ SF IF RF ID ]
cs 0x23 35
ss 0x2b 43
ds 0x2b 43
es 0x2b 43
fs 0x0 0
gs 0x63 99
From To Syms Read Shared Object Library
0xf76a6590 0xf76de0f7 Yes (*) /lib/i386-linux-gnu/libm.so.6
0xf769da30 0xf769e961 Yes (*) /lib/i386-linux-gnu/libdl.so.2
0xf7610914 0xf7656c78 Yes bin/libstdc++.so.6
0xf75b1870 0xf75beef1 Yes (*) /lib/i386-linux-gnu/libpthread.so.0
0xf740e750 0xf753a04d Yes (*) /lib/i386-linux-gnu/libc.so.6
0xf7703860 0xf771c61d Yes (*) /lib/ld-linux.so.2
0xf73e2e00 0xf73f20fc Yes bin/libgcc_s.so.1
0xf73b4ea0 0xf73c9118 Yes (*) bin/libtier0_srv.so
0xf73a3840 0xf73a705c Yes (*) /lib/i386-linux-gnu/librt.so.1
0xf72bce20 0xf72df064 Yes (*) bin/libvstdlib_srv.so
0xf6e07820 0xf6e75a58 Yes (*) bin/dedicated_srv.so
0xf6dc1ea0 0xf6dd73d4 Yes (*) bin/libsteam_api.so
0xf6a47c70 0xf6c43560 Yes (*) /home/l4d2_alt_coop/serverfiles/bin/engine_srv.so
0xf64fabb0 0xf6523c50 Yes (*) /home/l4d2_alt_coop/serverfiles/bin/soundemittersystem_srv.so
0xf638de00 0xf644a2a4 Yes (*) /home/l4d2_alt_coop/serverfiles/bin/materialsystem_srv.so
0xf4e51410 0xf4ef4270 Yes (*) /home/l4d2_alt_coop/serverfiles/bin/studiorender_srv.so
0xf4c06840 0xf4d9e4b8 Yes (*) /home/l4d2_alt_coop/serverfiles/bin/vphysics_srv.so
0xf4b46a00 0xf4b97ef0 Yes (*) /home/l4d2_alt_coop/serverfiles/bin/datacache_srv.so
0xf4a8c150 0xf4af6978 Yes (*) /home/l4d2_alt_coop/serverfiles/bin/vscript_srv.so
0xf4a5d340 0xf4a6d444 Yes (*) /home/l4d2_alt_coop/serverfiles/bin/shaderapiempty_srv.so
0xeec7dd00 0xef8fc780 Yes (*) /home/l4d2_alt_coop/.steam/sdk32/steamclient.so
0xee4faaf0 0xee571988 Yes (*) /home/l4d2_alt_coop/serverfiles/left4dead2/bin/matchmaking_ds_srv.so
0xed836330 0xee06f62c Yes (*) /home/l4d2_alt_coop/serverfiles/left4dead2/bin/server_srv.so
0xed4cec10 0xed4ddfe4 Yes (*) /home/l4d2_alt_coop/serverfiles/bin/scenefilecache_srv.so
0xf64df130 0xf64e0e0c Yes (*) /home/l4d2_alt_coop/serverfiles/left4dead2/addons/metamod/bin/server.so
0xe9111510 0xe913c4f8 Yes (*) /home/l4d2_alt_coop/serverfiles/left4dead2/addons/metamod/bin/metamod.2.l4d2.so
0xf64cca50 0xf64d2b62 Yes (*) /lib/i386-linux-gnu/libnss_files.so.2
0xf64c4b50 0xf64c7933 Yes (*) /lib/i386-linux-gnu/libnss_dns.so.2
0xe90eb660 0xe90f7f04 Yes (*) /lib/i386-linux-gnu/libresolv.so.2
(*): Shared library is missing debugging information.
Dump of assembler code for function _ZN10SourceHook10CPageAlloc4FreeEPv:
0xe9122920 <+0>: push %ebx
0xe9122921 <+1>: push %edi
0xe9122922 <+2>: push %esi
0xe9122923 <+3>: sub $0x10,%esp
0xe9122926 <+6>: mov 0x20(%esp),%esi
0xe912292a <+10>: mov 0x8(%esi),%eax
=> 0xe912292d <+13>: mov 0x1c(%eax),%edi
0xe9122930 <+16>: cmp %eax,%edi
0xe9122932 <+18>: je 0xe91229fb <_ZN10SourceHook10CPageAlloc4FreeEPv+219>
0xe9122938 <+24>: mov 0x24(%esp),%ebx
0xe912293c <+28>: nopl 0x0(%eax)
0xe9122940 <+32>: mov %ebx,0x4(%esp)
0xe9122944 <+36>: mov %edi,(%esp)
0xe9122947 <+39>: call 0xe9122a10 <_ZN10SourceHook10CPageAlloc15AllocatedRegion7TryFreeEPv>
0xe912294c <+44>: test %al,%al
0xe912294e <+46>: jne 0xe9122965 <_ZN10SourceHook10CPageAlloc4FreeEPv+69>
0xe9122950 <+48>: xor %eax,%eax
0xe9122952 <+50>: test %edi,%edi
0xe9122954 <+52>: je 0xe9122959 <_ZN10SourceHook10CPageAlloc4FreeEPv+57>
0xe9122956 <+54>: mov 0x1c(%edi),%eax
0xe9122959 <+57>: cmp 0x8(%esi),%eax
0xe912295c <+60>: mov %eax,%edi
0xe912295e <+62>: jne 0xe9122940 <_ZN10SourceHook10CPageAlloc4FreeEPv+32>
0xe9122960 <+64>: jmp 0xe91229fb <_ZN10SourceHook10CPageAlloc4FreeEPv+219>
0xe9122965 <+69>: cmpl $0x0,0x14(%edi)
0xe9122969 <+73>: jne 0xe91229fb <_ZN10SourceHook10CPageAlloc4FreeEPv+219>
0xe912296f <+79>: mov (%edi),%eax
0xe9122971 <+81>: mov 0x4(%edi),%ecx
0xe9122974 <+84>: mov %ecx,0x4(%esp)
0xe9122978 <+88>: mov %eax,(%esp)
0xe912297b <+91>: call 0xf74d9bb0 <munmap>
0xe9122980 <+96>: test %edi,%edi
0xe9122982 <+98>: mov 0x1c(%edi),%eax
0xe9122985 <+101>: je 0xe91229ca <_ZN10SourceHook10CPageAlloc4FreeEPv+170>
0xe9122987 <+103>: mov 0x20(%edi),%ecx
0xe912298a <+106>: mov %eax,0x1c(%ecx)
0xe912298d <+109>: mov 0x1c(%edi),%eax
0xe9122990 <+112>: mov 0x20(%edi),%ecx
0xe9122993 <+115>: mov %ecx,0x20(%eax)
0xe9122996 <+118>: mov 0x10(%edi),%ecx
0xe9122999 <+121>: mov 0x8(%ecx),%eax
0xe912299c <+124>: mov %ecx,0x8(%ecx)
0xe912299f <+127>: mov 0x10(%edi),%ecx
0xe91229a2 <+130>: mov %ecx,0xc(%ecx)
0xe91229a5 <+133>: mov 0x10(%edi),%ecx
0xe91229a8 <+136>: cmp %ecx,%eax
0xe91229aa <+138>: je 0xe91229db <_ZN10SourceHook10CPageAlloc4FreeEPv+187>
0xe91229ac <+140>: nopl 0x0(%eax)
0xe91229b0 <+144>: mov 0x8(%eax),%ebx
0xe91229b3 <+147>: test %eax,%eax
0xe91229b5 <+149>: je 0xe91229c2 <_ZN10SourceHook10CPageAlloc4FreeEPv+162>
0xe91229b7 <+151>: mov %eax,(%esp)
0xe91229ba <+154>: call 0xe9116600 <_ZdlPv>
0xe91229bf <+159>: mov 0x10(%edi),%ecx
0xe91229c2 <+162>: cmp %ecx,%ebx
0xe91229c4 <+164>: mov %ebx,%eax
0xe91229c6 <+166>: jne 0xe91229b0 <_ZN10SourceHook10CPageAlloc4FreeEPv+144>
0xe91229c8 <+168>: jmp 0xe91229dd <_ZN10SourceHook10CPageAlloc4FreeEPv+189>
0xe91229ca <+170>: mov 0x20,%ecx
0xe91229d0 <+176>: mov %eax,0x1c(%ecx)
0xe91229d3 <+179>: mov 0x1c(%edi),%eax
0xe91229d6 <+182>: mov %ecx,0x20(%eax)
0xe91229d9 <+185>: jmp 0xe91229f8 <_ZN10SourceHook10CPageAlloc4FreeEPv+216>
0xe91229db <+187>: mov %eax,%ebx
0xe91229dd <+189>: movl $0x0,0x14(%edi)
0xe91229e4 <+196>: test %ebx,%ebx
0xe91229e6 <+198>: je 0xe91229f0 <_ZN10SourceHook10CPageAlloc4FreeEPv+208>
0xe91229e8 <+200>: mov %ebx,(%esp)
0xe91229eb <+203>: call 0xf74682f0 <free>
0xe91229f0 <+208>: mov %edi,(%esp)
0xe91229f3 <+211>: call 0xe9116600 <_ZdlPv>
0xe91229f8 <+216>: decl 0xc(%esi)
0xe91229fb <+219>: add $0x10,%esp
0xe91229fe <+222>: pop %esi
0xe91229ff <+223>: pop %edi
0xe9122a00 <+224>: pop %ebx
0xe9122a01 <+225>: ret
End of assembler dump.
Stack level 0, frame at 0xfff1e480:
eip = 0xe912292d in SourceHook::CPageAlloc::Free(void*); saved eip = 0x9527bf8
called by frame at 0xe9143188
Arglist at 0xfff1e478, args:
Locals at 0xfff1e478, Previous frame's sp is 0xfff1e480
Saved registers:
ebx at 0xfff1e474, esi at 0xfff1e46c, edi at 0xfff1e470, eip at 0xfff1e47c
End of Source crash report
i have one plugin what use your extension (voice hook), and i want say what this crash work only if players online and dhooks operate with plugins. if i delete dhooks crash stopped.
I tested version 2.0.6 crash reproduced. I think this bug around changes in sourcemod 1.8.