Opened 14 years ago
Closed 11 years ago
#7032 closed defect (obsolete)
possible regression in 3.2.4: blank (white) window when restoring from saved state
Reported by: | Jochen Trumpf | Owned by: | |
---|---|---|---|
Component: | other | Version: | VirtualBox 3.2.4 |
Keywords: | Cc: | ||
Guest type: | other | Host type: | other |
Description (last modified by )
This has been discussed on
http://forums.virtualbox.org/viewtopic.php?f=6&t=31941
Please see that thread for detailed information including log files.
After upgrading from 3.2.2 to 3.2.4 saved machine states can not be successfully restored. They come up with a blank (white) window in the top left corner of the screen with the titlebar off the screen. This is a Windows 7 64bit host with Gentoo Linux guest, but other combinations have shown the same symptoms (see the forum thread). When you resize the machine window Windows 7 automatically recenters such that you now see the titlebar, however, the window is still completely blank and does also not show the menu bar. Forcing a machine power off (using the close button in the top right window corner) and restarting the powered off machine works as expected, no problems there.
This is 100% reproducible, in 3.2.4 restoring saved states doesn't work, powering off and powering on again works just fine.
Reverting to 3.2.2 solves the problem for me. With 3.2.2 saved states can be restored just fine.
This might help as well: after reverting back to 3.2.2, when I first restarted the (forcefully) powered off machine I got the same symptoms(!). The system did appear to be starting fine though (disk activity etc.), although nothing was shown in the machine window. When the boot up sequence reached the X Windows start, the machine window was repainted and now the menu bar and everything appeared. From then on, everything has been working fine again, including several save/restore and power off/power on cycles. Not sure how to make sense of this. In 3.2.2 it only occurred for the machine that was forcefully powered off using 3.2.4, while in 3.2.4 it only occurred for save/restore cycles, not for forced power off/power on cycles. Weird, isn't it?
Attachments (1)
Change History (14)
by , 14 years ago
comment:1 by , 14 years ago
follow-ups: 4 6 comment:2 by , 14 years ago
Same here, although hitting Host+F twice (and, if neccessary, right clicking on a VM in the VirtualBox GUI and choosing "Show" to focus on the window that doesn't appear in the task bar) to go to fullscreen and back more or less fixes this, so it's more of an annoyance.
comment:3 by , 14 years ago
Windows 7 64bit host and XP SP3 32bit guest. I upgraded to 3.2.4 from 2.1.14 and I uninstalled the guest tools before the upgrade. I had symptoms very similar to the OP.
I was able to resolve the issue by uninstalling the guest tools in safe mode and reinstalling. Technically I installed without D3D support and then reinstalled with D3D support after it seemed repaired.
follow-up: 5 comment:4 by , 14 years ago
Replying to Leak:
Same here, although hitting Host+F twice (and, if neccessary, right clicking on a VM in the VirtualBox GUI and choosing "Show" to focus on the window that doesn't appear in the task bar) to go to fullscreen and back more or less fixes this, so it's more of an annoyance.
This workaround does not work for me. I'm able to show the window but it is completely white inside with no menu bar or status bar. Resizing it makes no difference.
comment:5 by , 14 years ago
Replying to arangas:
Replying to Leak:
Same here, although hitting Host+F twice (and, if neccessary, right clicking on a VM in the VirtualBox GUI and choosing "Show" to focus on the window that doesn't appear in the task bar) to go to fullscreen and back more or less fixes this, so it's more of an annoyance.
This workaround does not work for me. I'm able to show the window but it is completely white inside with no menu bar or status bar. Resizing it makes no difference.
Can you at least see the VM when it's in fullscreen mode? And do you have the guest additions installed?
comment:6 by , 14 years ago
Replying to Leak:
Same here, although hitting Host+F twice (and, if neccessary, right clicking on a VM in the VirtualBox GUI and choosing "Show" to focus on the window that doesn't appear in the task bar) to go to fullscreen and back more or less fixes this, so it's more of an annoyance.
Before I reinstalled the guest tools, the guest would only restore at a very small and non-adjustable screen resolution. I could interact with the guest but it was barely bigger than a dialog button.
Just now my guest has started back with the white screen but the Host+F trick worked for me.
follow-up: 8 comment:7 by , 14 years ago
For what it's worth - it seems the wrong window position is saved when saving the machine state, but only for the first screen:
<ExtraDataItem name="GUI/LastGuestSizeHint" value="1280,912"/> <ExtraDataItem name="GUI/LastGuestSizeHint1" value="1280,965"/> <ExtraDataItem name="GUI/LastWindowPostion" value="0,0,0,0,max"/> <ExtraDataItem name="GUI/LastWindowPostion1" value="1681,100,640,520,max"/>
Also, since it's marked as maximized shouldn't the window for the first screen show up as maximized anyway? I'd expect it to crumble to a 0x0 window only after clicking on the restore button of the maximized window...
comment:8 by , 14 years ago
Replying to Leak:
For what it's worth - it seems the wrong window position is saved when saving the machine state, but only for the first screen: [...]
That would explain the behavior I saw when switching back to 3.2.2. According to the Changelog there was the following change: •GUI: fixed a superfluous resize-event on powering-on VM for X11 (improvement for the 3.2.2 fix) So, in 3.2.2 this superfluous resize-event allowed the machine to recover from the faulty state once X started, but on 3.2.4 it doesn't happen. Looks like we are on the right track.
follow-up: 11 comment:9 by , 14 years ago
OK yes I get it now. If a VM was saved state when not in fullscreen mode then it will restore with the blank white window off the screen. Using Host+F fixes this. If it was saved state in fullscreen mode then it restores fine.
follow-up: 12 comment:11 by , 14 years ago
Replying to arangas:
OK yes I get it now. If a VM was saved state when not in fullscreen mode then it will restore with the blank white window off the screen. Using Host+F fixes this. If it was saved state in fullscreen mode then it restores fine.
The problem is still present in 3.2.12 (same symptoms). For me this is more than a minor annoyance since I am using virtualbox in (maximized) window mode rather than in fullscreen mode. This means I have to press Host+F twice everytime I reboot my host (twice a day moving between home and work).
Interestingly (or confusingly), the restore also somehow works in the following curious case: reboot the virtual machine while the host is connected to a large display. Save state. Disconnect the large display, switching the host to a smaller resolution. Restore the saved state and the machine window will come up (although it won't adjust its resolution automatically).
Is there anything else I can do to help find a fix?
comment:12 by , 14 years ago
Replying to JochenT:
Interestingly (or confusingly), the restore also somehow works in the following curious case: reboot the virtual machine while the host is connected to a large display. Save state. Disconnect the large display, switching the host to a smaller resolution. Restore the saved state and the machine window will come up (although it won't adjust its resolution automatically).
The actual problem we're all having here is that sometimes upon shutdown VirtualBox is storing all zeros for the window coordinates into the VM's XML-file, and when it then tries to resize to that 0x0 window size (like when you restore the window from it's maximized state, which is saved as a separate flag) you get that "white window".
I've found that when I resize the window after going to fullscreen and back to get rid of that non-redrawing window it'll save proper window coordinates into the XML file when shutting down, so I wouldn't be surprised if changing the screen size (and thus the window getting resized along) would have a similar effect.
What I don't get is why the VirtualBox code responsible for loading the window coordinates from the XML file doesn't just enforce some minimum window size, even if it's just 16x16 or something - that of course doesn't fix the bug where a 0x0 size is written, but at least it would get rid of a big annoyance when starting the VM the next time.
comment:13 by , 11 years ago
Description: | modified (diff) |
---|---|
Resolution: | → obsolete |
Status: | new → closed |
I'm having the same problem running a Win 7 64-bit host with Win 2008 guests.