From e968e4b09049ceef142d18f18a71b687813e7d66 Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Mon, 16 Sep 2013 15:05:28 +0200 Subject: [PATCH] intel_extreme: don't expose overlay in accelerant when not allocated ... in the driver. --- src/add-ons/accelerants/intel_extreme/accelerant.cpp | 8 +++++--- src/add-ons/accelerants/intel_extreme/mode.cpp | 5 ++++- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/add-ons/accelerants/intel_extreme/accelerant.cpp b/src/add-ons/accelerants/intel_extreme/accelerant.cpp index 1ae8696859..7ef7269bd8 100644 --- a/src/add-ons/accelerants/intel_extreme/accelerant.cpp +++ b/src/add-ons/accelerants/intel_extreme/accelerant.cpp @@ -141,9 +141,11 @@ init_common(int device, bool isClone) // The overlay registers, hardware status, and cursor memory share // a single area with the shared_info - gInfo->overlay_registers = (struct overlay_registers*) - (gInfo->shared_info->graphics_memory - + gInfo->shared_info->overlay_offset); + if (gInfo->shared_info->overlay_offset != 0) { + gInfo->overlay_registers = (struct overlay_registers*) + (gInfo->shared_info->graphics_memory + + gInfo->shared_info->overlay_offset); + } if (gInfo->shared_info->device_type.InGroup(INTEL_TYPE_96x)) { // allocate some extra memory for the 3D context diff --git a/src/add-ons/accelerants/intel_extreme/mode.cpp b/src/add-ons/accelerants/intel_extreme/mode.cpp index 4e87f10f78..00182b8040 100644 --- a/src/add-ons/accelerants/intel_extreme/mode.cpp +++ b/src/add-ons/accelerants/intel_extreme/mode.cpp @@ -431,7 +431,10 @@ retrieve_current_mode(display_mode& mode, uint32 pllRegister) mode.h_display_start = 0; mode.v_display_start = 0; mode.flags = B_8_BIT_DAC | B_HARDWARE_CURSOR | B_PARALLEL_ACCESS - | B_DPMS | B_SUPPORTS_OVERLAYS; + | B_DPMS; + if (gInfo->overlay_registers != NULL) { + mode.flags |= B_SUPPORTS_OVERLAYS; + } }