Skip to content

Commit

Permalink
Merge remote-tracking branch 'remotes/kraxel/tags/fixes-20210810-pull…
Browse files Browse the repository at this point in the history
…-request' into staging

fixes for gtk, sdl and audio live migration.

# gpg: Signature made Tue 10 Aug 2021 13:18:30 BST
# gpg:                using RSA key A0328CFFB93A17A79901FE7D4CB6D8EED3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <[email protected]>" [full]
# gpg:                 aka "Gerd Hoffmann <[email protected]>" [full]
# gpg:                 aka "Gerd Hoffmann (private) <[email protected]>" [full]
# Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138

* remotes/kraxel/tags/fixes-20210810-pull-request:
  ui/sdl2: Check return value from g_setenv()
  audio: Never send migration section
  ui/gtk: retry sending VTE console input

Signed-off-by: Peter Maydell <[email protected]>
  • Loading branch information
pm215 committed Aug 10, 2021
2 parents 1f3afa5 + 6ff5b5d commit 02b8aee
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 7 deletions.
10 changes: 10 additions & 0 deletions audio/audio.c
Original file line number Diff line number Diff line change
Expand Up @@ -1622,10 +1622,20 @@ void audio_cleanup(void)
}
}

static bool vmstate_audio_needed(void *opaque)
{
/*
* Never needed, this vmstate only exists in case
* an old qemu sends it to us.
*/
return false;
}

static const VMStateDescription vmstate_audio = {
.name = "audio",
.version_id = 1,
.minimum_version_id = 1,
.needed = vmstate_audio_needed,
.fields = (VMStateField[]) {
VMSTATE_END_OF_LIST()
}
Expand Down
10 changes: 4 additions & 6 deletions ui/gtk.c
Original file line number Diff line number Diff line change
Expand Up @@ -1646,16 +1646,14 @@ static void gd_vc_send_chars(VirtualConsole *vc)

len = qemu_chr_be_can_write(vc->vte.chr);
avail = fifo8_num_used(&vc->vte.out_fifo);
if (len > avail) {
len = avail;
}
while (len > 0) {
while (len > 0 && avail > 0) {
const uint8_t *buf;
uint32_t size;

buf = fifo8_pop_buf(&vc->vte.out_fifo, len, &size);
buf = fifo8_pop_buf(&vc->vte.out_fifo, MIN(len, avail), &size);
qemu_chr_be_write(vc->vte.chr, (uint8_t *)buf, size);
len -= size;
len = qemu_chr_be_can_write(vc->vte.chr);
avail -= size;
}
}

Expand Down
5 changes: 4 additions & 1 deletion ui/sdl2.c
Original file line number Diff line number Diff line change
Expand Up @@ -817,7 +817,10 @@ static void sdl2_display_init(DisplayState *ds, DisplayOptions *o)
* This is a bit hackish but saves us from bigger problem.
* Maybe it's a good idea to fix this in SDL instead.
*/
g_setenv("SDL_VIDEODRIVER", "x11", 0);
if (!g_setenv("SDL_VIDEODRIVER", "x11", 0)) {
fprintf(stderr, "Could not set SDL_VIDEODRIVER environment variable\n");
exit(1);
}
#endif

if (SDL_Init(SDL_INIT_VIDEO)) {
Expand Down

0 comments on commit 02b8aee

Please sign in to comment.