VirtualBox: 6.0.0 beta 3 126907
Host: RHEL 7.6
Guest: RHEL 6.10
After I switch graphics controller to VMSVGA, change screen resolution from host no longer works, but still works inside the guest. I already found the reason, because the monitor name for VBoxVGA is VGA-0, but for VMSVGA it's Virtual1.
The following patch solve the problem, it maybe a wrong fix but just for a hint .
Code: Select all
--- a/src/VBox/Additions/x11/VBoxClient/display.cpp
+++ b/src/VBox/Additions/x11/VBoxClient/display.cpp
@@ -124,7 +124,11 @@ static void doResize(struct DISPLAYSTATE *pState)
"--output VGA-24 --auto --right-of VGA-23 --output VGA-25 --auto --right-of VGA-24 "
"--output VGA-26 --auto --right-of VGA-25 --output VGA-27 --auto --right-of VGA-26 "
"--output VGA-28 --auto --right-of VGA-27 --output VGA-29 --auto --right-of VGA-28 "
- "--output VGA-30 --auto --right-of VGA-29 --output VGA-31 --auto --right-of VGA-30";
+ "--output VGA-30 --auto --right-of VGA-29 --output VGA-31 --auto --right-of VGA-30 "
+ "--output Virtual1 --auto --output Virtual2 --auto --right-of Virtual1 "
+ "--output Virtual3 --auto --right-of Virtual2 --output Virtual4 --auto --right-of Virtual3 "
+ "--output Virtual5 --auto --right-of Virtual4 --output Virtual6 --auto --right-of Virtual5 "
+ "--output Virtual7 --auto --right-of Virtual6 --output Virtual8 --auto --right-of Virtual7 ";
char szCommand[sizeof(szCommandBase) + 256];
RTStrPrintf(szCommand, sizeof(szCommand), szCommandBase, pState->pcszXrandr);
int rcShutUpGcc = system(szCommand); RT_NOREF_PV(rcShutUpGcc);