how to reproduce:
- enter bogus ip address in “preferred DNS server” field OR disconnect your lan from internet
- start ET
how to reproduce:
Does this still happen if you disable PB? I imagine it’s the likely culprit…
(…I’m having visions of the time evenbalance’s DNS servers went down a while back, and the game would randomly freeze for 30 seconds while trying to contact the PB masters… ugh.)
you’re right, disabling pb seems to get rid of the problem. it still sux tho… :bored:
i’m off to whine in the punkbuster forums…
i played a little more with it. with punkbuster enabled: the game hangs.
with punkbuster disabled: it also hangs, but tapping out and back in (with windows key) seems to break the deadlock.
The other place it might be hanging is when resolving the auto-update servers (e.g. au2rtcw2.activision.com)–try setting cl_autoupdate to 0 and see if that fixes the rest of the problem.
cl_autoupdate 0 fixes it.
:bash: bad programming, splash damage and punkbuster… shame on you.
Doing non-blocking DNS lookups is a real pain in the ass, so I don’t really blame them. RtCW’s auto-update code probably has exactly the same problem, and PB is… well…
Part of the problem is that gethostbyname() isn’t thread-safe (and, unless ET on Win32 is different, ET doesn’t spawn any additional threads anyway. Directsound might, but I imagine that’s all internal to DirectX.)