From bfd39f66acca40615211b40a7e6b9d345a8b8d40 Mon Sep 17 00:00:00 2001 From: Steve Checkoway Date: Fri, 23 Dec 2005 13:10:21 +0000 Subject: [PATCH] Fix screenshot crash. --- stepmania/src/RageDisplay.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/stepmania/src/RageDisplay.cpp b/stepmania/src/RageDisplay.cpp index 0b1e991980..8ae1779718 100644 --- a/stepmania/src/RageDisplay.cpp +++ b/stepmania/src/RageDisplay.cpp @@ -635,9 +635,14 @@ bool RageDisplay::SaveScreenshot( CString sPath, GraphicsFileFormat format ) if( format != SAVE_LOSSLESS ) { /* Maintain the DAR. */ - int iWidth = lrintf( 640 / GetActualVideoModeParams().fDisplayAspectRatio ); - LOG->Trace( "%ix%i -> %ix%i (%.3f)", surface->w, surface->h, 640, iWidth, GetActualVideoModeParams().fDisplayAspectRatio ); - RageSurfaceUtils::Zoom( surface, 640, iWidth ); + float fDAR = GetActualVideoModeParams().fDisplayAspectRatio; + + // -1 seems to be a sentinel + if( fDAR < 0.0f ) + fDAR = 4.0f/3.0f; + int iHeight = lrintf( 640 / fDAR ); + LOG->Trace( "%ix%i -> %ix%i (%.3f)", surface->w, surface->h, 640, iHeight, fDAR ); + RageSurfaceUtils::Zoom( surface, 640, iHeight ); } RageFile out;