Hi,
Haha well where that idea comes from is like when Diablo 2 gets the gamma error, it has already resized the resolution, but decides to quit and not resize it back. Not very nice, but games do funny things like that.
Because windows' ddraw.dll restores everything when the app exists. I've added some code to do that do my ddraw lib. I restore the screen mode when the ddraw object is released, and on the last DllMain() unload call, I loop through all ddraw objects, print their refcount, destroy all the surfaces and the ddraw object. This restores the screen res successfully.
Turned out that many apps do not care to release their stuff... Gothic 2, Diablo 2, Moto racer 2, ...
Stefan