Win32 HACK: We wait on both the pfCrashCli handle and the crashed semaphore.
This way, we can proceed to exit pfCrashSrv when the client process exits
insanely.
pfGameScore will call you back on actions that require server ops. Also, we
ref count the score instead of using some weird hashtable manager class
because the server never actually tells us if someone else changes the
score.
This reverts commit 8da276f2e50688691b294438ed3d2bcfa218c617, a commit that
did not work as advertised and added too many chances for things to go badly
wrong.
pfCrashHandler includes a client that watches plClient for crashes. When
it detects a crash, it lets the plCrashSrv (plCrashHandler.exe) know about
it. We then produce a mninidump, then signal the client that it's OK to
show a crash dialog. See http://www.nynaeve.net/?p=128 for a good
explanation of why I split the crash logic into another process.
The previous implementation had the following bugs:
- DST was truncated to end of October
- DST start was off by one week in years where March 1st is a Monday
- DST start was off by one second (1:59:59 -> 2:00:00 -> 3:00:01 instead of the correct 1:59:59 -> 3:00:00 -> 3:00:01)
Tested against tzdata 2009g.
The default value of the "dst" argument must be 0, because -1 leads to incorrect results when the given time falls into local DST. However, a "dst" argument makes no sense on a method that deals with GMT anyway, so remove it entirely.
IP addresses don't need to be unicode.
pnUtAddr is still around until we replace all NetAddress uses with
plNetAddress (they are typedef'ed to each other right now).
Update the Windows 7 taskbarlist progress bar on plOperationProgress
callbacks. It's not totally nesecary, but it adds a nice bit of polish to
the experience.
This probably has a bunch of bugs because of Network Order/Host Order
issues. If we intend to actually support BE architectures, these
problems are going to get much much worse :(