From fccbe8f1a16f0b38fdbb8104fbd3654c7ccbf2f9 Mon Sep 17 00:00:00 2001 From: Michael Lotz Date: Sat, 13 Sep 2008 15:51:16 +0000 Subject: [PATCH] * CID 525: Check the return of _UpdateModeList() as otherwise fModeList can still be NULL although it is used further down. * CID 526: Check the front buffer to be available before using it in SetMode(). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27483 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/servers/app/drawing/AccelerantHWInterface.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/servers/app/drawing/AccelerantHWInterface.cpp b/src/servers/app/drawing/AccelerantHWInterface.cpp index 728d12e6fc..5bde8e2287 100644 --- a/src/servers/app/drawing/AccelerantHWInterface.cpp +++ b/src/servers/app/drawing/AccelerantHWInterface.cpp @@ -498,6 +498,9 @@ AccelerantHWInterface::SetMode(const display_mode& mode) if (!_IsValidMode(mode)) return B_BAD_VALUE; + if (fFrontBuffer == NULL) + return B_NO_INIT; + // just try to set the mode - we let the graphics driver // approve or deny the request, as it should know best @@ -822,8 +825,11 @@ AccelerantHWInterface::GetPreferredMode(display_mode* preferredMode) if (version != EDID_VERSION_1) return B_NOT_SUPPORTED; - if (fModeList == NULL) - _UpdateModeList(); + if (fModeList == NULL) { + status = _UpdateModeList(); + if (status != B_OK) + return status; + } status = B_NOT_SUPPORTED; display_mode bestMode;