Hi, > ui/console.c:qmp_screendump attempts to handle this by calling > graphic_hw_update, but qxl handle's that asynchronously, and it isn't > run until after the first screendump is performed. That's why the second > screendump is correct.
Known issue. The graphic_hw_update makes sure it works sort-of ok when you do snapshorts regularly (popular use case: autotest). It's band aid, but still better than nothing. > Fix this by triggering qxl_render_update whenever a non-vga surface is > created. That only catches a small fraction of the problem. You'll still face the very same issue shortly thereafter. Start firefox in your guest, then do two snapshots again. Different variant of the same bug: no firefox window on the first snapshot. And this patch doesn't help. We'll basically need a better snapshot command, but qmp lacks infrastructure. We'll need something like blockjobs, but more general and not limited to the block layer. Then you can kick off the screenshot request as job, get notified on completion, and we can get the qxl case right then. cheers, Gerd