diff options
| author | Andrew A. de Laix <alain@lindenlab.com> | 2011-04-06 14:55:09 -0700 | 
|---|---|---|
| committer | Andrew A. de Laix <alain@lindenlab.com> | 2011-04-06 14:55:09 -0700 | 
| commit | 7cc0388d81476f61536c112d4838ef323f987c46 (patch) | |
| tree | 52b2afe9f0eb2564534a288037c94cc3c67ad7a1 | |
| parent | 7054aaba6d6f044cd835e79e3be898d63ce96def (diff) | |
FIX VWR-25444: properly initialize DEVMODE structure to prevent crash.
| -rw-r--r-- | indra/llwindow/llwindowwin32.cpp | 9 | 
1 files changed, 8 insertions, 1 deletions
| diff --git a/indra/llwindow/llwindowwin32.cpp b/indra/llwindow/llwindowwin32.cpp index ab089081e6..6722248c23 100644 --- a/indra/llwindow/llwindowwin32.cpp +++ b/indra/llwindow/llwindowwin32.cpp @@ -500,6 +500,8 @@ LLWindowWin32::LLWindowWin32(LLWindowCallbacks* callbacks,  	//-----------------------------------------------------------------------  	DEVMODE dev_mode; +	::ZeroMemory(&dev_mode, sizeof(DEVMODE));
 +	dev_mode.dmSize = sizeof(DEVMODE);  	DWORD current_refresh;  	if (EnumDisplaySettings(NULL, ENUM_CURRENT_SETTINGS, &dev_mode))  	{ @@ -878,6 +880,8 @@ BOOL LLWindowWin32::switchContext(BOOL fullscreen, const LLCoordScreen &size, BO  {  	GLuint	pixel_format;  	DEVMODE dev_mode; +	::ZeroMemory(&dev_mode, sizeof(DEVMODE));
 +	dev_mode.dmSize = sizeof(DEVMODE);  	DWORD	current_refresh;  	DWORD	dw_ex_style;  	DWORD	dw_style; @@ -2711,6 +2715,8 @@ LLWindow::LLWindowResolution* LLWindowWin32::getSupportedResolutions(S32 &num_re  	{  		mSupportedResolutions = new LLWindowResolution[MAX_NUM_RESOLUTIONS];  		DEVMODE dev_mode; +		::ZeroMemory(&dev_mode, sizeof(DEVMODE));
 +		dev_mode.dmSize = sizeof(DEVMODE);  		mNumSupportedResolutions = 0;  		for (S32 mode_num = 0; mNumSupportedResolutions < MAX_NUM_RESOLUTIONS; mode_num++) @@ -2786,7 +2792,8 @@ F32 LLWindowWin32::getPixelAspectRatio()  BOOL LLWindowWin32::setDisplayResolution(S32 width, S32 height, S32 bits, S32 refresh)  {  	DEVMODE dev_mode; -	dev_mode.dmSize = sizeof(dev_mode); +	::ZeroMemory(&dev_mode, sizeof(DEVMODE));
 +	dev_mode.dmSize = sizeof(DEVMODE);  	BOOL success = FALSE;  	// Don't change anything if we don't have to | 
