Check for device lost with CheckDeviceState when using D3D9Ex.

According to the docs, TestCooperativeLevel is a no-op with D3D9Ex.

http://msdn.microsoft.com/en-us/library/bb174348(VS.85).aspx

I believe it is safe to ignore the additional return values from CheckDeviceState. Some appear to be to allow optimization when a window is occluded. The new errors seem to be best treated as device lost as we were before. Although if the device is removed (!) I'm not sure what to do. It might also be useful to communicate D3DERR_DEVICEHUNG to Chromium in the future so it can use it as a hint to back off.

Tested that D3D9 and D3D9Ex take the appropriate paths through Display::isDeviceLost.

Bug: http://code.google.com/p/angleproject/issues/detail?id=113

Review URL: http://codereview.appspot.com/4154042

git-svn-id: https://angleproject.googlecode.com/svn/trunk@557 736b8ea6-26fd-11df-bfd4-992fa37f6226
4 files changed