Core Known Issues List

This page concerns bugs in the HL2 Core, ie the closed-source side of things that can't be directly fixed via SDK code changes.
== Source Crashes when alt+tab during background map loading ==
* When you alt + tab out of the game when the background map is loading, you will end up with a crash. Debug points to a frame count hack that I have no idea how to fix. Someone that knows how to add a curTime event may be able to fix this bug.
Here's a stack trace following a screen change and a crash:
>	engine.dll!0da99893() 	
 	engine.dll!0db000e2() 	
 	engine.dll!0db0046f() 	
 	engine.dll!0dafba15() 	
 	engine.dll!0da9995a() 	
 	engine.dll!0da6247d() 	
 	engine.dll!0db2e05c() 	
 	engine.dll!0d9e3907() 	
 	engine.dll!0da6f816() 	
 	engine.dll!0da7a31c() 	
 	engine.dll!0da7a9b3() 	
 	engine.dll!0da853b5() 	
 	engine.dll!0da854a2() 	
 	engine.dll!0da8553f() 	
 	engine.dll!0db2309c() 	
 	engine.dll!0db22c67() 	
 	MaterialSystem.dll!0d58d0c5() 	
 	engine.dll!0daa50fb() 	
 	engine.dll!0db22eee() 	
 	engine.dll!0db22d24() 	
 	engine.dll!0db22d2f() 	
 	engine.dll!0db22dcc() 	
 	launcher.dll!1000369b() 	
 	launcher.dll!10007f70() 	
 	launcher.dll!10007f70() 	
 	launcher.dll!100057f8() 	
The stack trace I get now is
>	materialsystem.dll!0d81f7a6() 	
 	materialsystem.dll!0d8210ca() 	
 	materialsystem.dll!0d81ea9f() 	
 	materialsystem.dll!0d81edb3() 	
 	materialsystem.dll!0d821356() 	
 	materialsystem.dll!0d82f0f5() 	
 	materialsystem.dll!0d81bb34() 	
 	shaderapidx9.dll!2a01c693() 	
 	shaderapidx9.dll!2a00f918() 	
 	shaderapidx9.dll!2a0166ec() 	
 	engine.dll!0da70d72() 	
 	materialsystem.dll!0d80cd3c() 	
 	materialsystem.dll!0d80cd4a() 	
 	engine.dll!0db2e25c() 	
 	engine.dll!0db2e962() 	
 	engine.dll!0db3b795() 	
 	engine.dll!0db3b8c3() 	
 	engine.dll!0db3b96f() 	
 	engine.dll!0dbdf943() 	
 	engine.dll!0dbde787() 	
 	materialsystem.dll!0d80ea35() 	
 	engine.dll!0db4df7b() 	
 	engine.dll!0dbde884() 	
 	engine.dll!0dc41d21() 	
 	engine.dll!0dbdef9e() 	
 	engine.dll!0dbdf05c() 	
 	launcher.dll!100083e1() 	
 	launcher.dll!100083e1() 	
 	launcher.dll!10005cf2() 	
== srcds does not inform you that your mod failed to load ==
You can use the following program to see the message that srcds brokenly fails to display:
// gcc modtest.c -ldl -o modtest
// env LD_LIBRARY_PATH=~/source/bin ./modtest ~/source/xxx/bin/server_i486.so
#include <dlfcn.h>
#include <stdio.h>
int main(int argc, char* argv[]) {
 void* handle = dlopen(argv[1], RTLD_LAZY);
 if (!handle) {
 fprintf(stderr, "error loading .so: %s\n", dlerror());
 return 1;
 }
 void* sym = dlsym(handle, "CreateInterface");
 if (!sym) {
 fprintf(stderr, "error loading symbol - %s\n", dlerror());
 return 1;
 }
 printf("success\n");
 return 0;
}
== HL2.exe mysteriously segfaults if you forget to put the client.dll and server.dll in your mod's bin directory ==
Fix: Don't do that.
Update: the behavior here seems to have changed - now HL2 gives an equally mysterious "Server uses different class tables" message. Can anyone else confirm this?
Confirmed. I scrapped a mod due to the mysterious "Missing SendTable for DT_Local/m_iFOV"
Just set your Visual Studio to break at any access violations.
== Typing +showbudget in srcds causes an instantaneous crash ==
Fix: Don't do that.
The stack trace is:
>	engine.dll!0dae07c1()
 	engine.dll!0d98c7f3()
 	engine.dll!0d98c9e0()
 	dedicated.dll!100a53cf()
 	dedicated.dll!100a5b81()
 	dedicated.dll!100a5657()
 	dedicated.dll!100a5bd0()
== bin/tier0_i486.so fails to shut down when using threads ==
It looks like this would be fixed if Valve would recompile bin/tier0_i486.so with the -fuse-cxa-atexit gcc option. I can't wait for Valve to fix this, so instead:
Workaround: In the mean time what I've done with my mod is add an alarm(10); to the bottom of void CServerGameDLL::DLLShutdown(void) so that if bin/tier0_i486.so fails to exit, it will be killed.
== Other info and links ==
See also SDK Known Issues List for the list of SDK Known Issues in the SDK.
See also this nice general HL2 bug list on the steam forums.
Category:Debugging Category:Feedback Category:Source SDK FAQ