From 39f61d2190e2c35dceea206efa61d818ba52f75e Mon Sep 17 00:00:00 2001 From: Alexander von Gluck IV Date: Thu, 12 Nov 2015 16:44:04 -0600 Subject: [PATCH] intel_extreme: Store current display mode on each port --- src/add-ons/accelerants/intel_extreme/Ports.cpp | 9 +++------ src/add-ons/accelerants/intel_extreme/Ports.h | 2 +- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/src/add-ons/accelerants/intel_extreme/Ports.cpp b/src/add-ons/accelerants/intel_extreme/Ports.cpp index facc709efa..8f8a4437b9 100644 --- a/src/add-ons/accelerants/intel_extreme/Ports.cpp +++ b/src/add-ons/accelerants/intel_extreme/Ports.cpp @@ -263,9 +263,8 @@ AnalogPort::SetDisplayMode(display_mode* target, uint32 colorMode) // Program target display mode fDisplayPipe->Enable(target, _PortRegister()); - // XXX: Crashes? // Set fCurrentMode to our set display mode - //memcpy(fCurrentMode, target, sizeof(display_mode)); + memcpy(&fCurrentMode, target, sizeof(display_mode)); return B_OK; } @@ -574,9 +573,8 @@ LVDSPort::SetDisplayMode(display_mode* target, uint32 colorMode) } #endif - // XXX: Crashes? // Set fCurrentMode to our set display mode - //memcpy(fCurrentMode, target, sizeof(display_mode)); + memcpy(&fCurrentMode, target, sizeof(display_mode)); return B_OK; } @@ -662,9 +660,8 @@ DigitalPort::SetDisplayMode(display_mode* target, uint32 colorMode) // Program target display mode fDisplayPipe->Enable(target, _PortRegister()); - // XXX: Crashes? // Set fCurrentMode to our set display mode - //memcpy(fCurrentMode, target, sizeof(display_mode)); + memcpy(&fCurrentMode, target, sizeof(display_mode)); return B_OK; } diff --git a/src/add-ons/accelerants/intel_extreme/Ports.h b/src/add-ons/accelerants/intel_extreme/Ports.h index 72a125829b..7b3c225a1a 100644 --- a/src/add-ons/accelerants/intel_extreme/Ports.h +++ b/src/add-ons/accelerants/intel_extreme/Ports.h @@ -77,7 +77,7 @@ static status_t _GetI2CSignals(void* cookie, int* _clock, static status_t _SetI2CSignals(void* cookie, int clock, int data); - display_mode* fCurrentMode; + display_mode fCurrentMode; DisplayPipe* fDisplayPipe;