ui: bugfixes, move x11 dependency to modules.

-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJa/oN5AAoJEEy22O7T6HE4q5EP+QGtFYTJxXXmNtSXlKd0vBtn
 hWgZnU9rLMfq7XjAN6i9Hg7ZVvcOtYD/3a5MIH6aGbF85krFdpuW7Pba9Mc+Wcxo
 D66qwmD/hmYJiG3IQqYda3wIQuPqILB79HZhFxOjuTWPr1DnzDTVIoRI2sqV7l/a
 KGRK3fPNYvhqNROx9h+x38OzbdT/4ag6vO+or9Vu/cITxVF+pBf7dy4n2VtjSyjI
 rHOrZ/x5Qp46yh8IBpQ3WN7jzxDkabakFnumbiYfrOm1nT3UXxqs4rCDxpYdUcau
 yRknMt/62thT4+8vUf/uWPgBXnleNWOaLE56+chHyQUiQhDVAvfWvMrYvCx3Hl/c
 hC8mYNiV5zt2IXzujciM4p/Qx6MJkfmzvHqf5Il8aT5q06aaJU1QyuNgXraWcKmp
 f06jnRVsNvRB1ss9sagDxsrI4kBDd2GZbkYw5130ZTZWTN+lRWsDqiT2O5SDbCbD
 5xZ5XQSKjmrcCR+UO4C4sokcdB0srKbypuXyMsjvlTfn1c4/SHQXyr75GoOFxoz7
 nBSyvzBFRGETMBfHtacTlC9neGkX7Z6ZxvtyppfCK/o22ivRHcCwuraBbjjZiAJ6
 qdsfirvlfwt5aeYwhPyCfychzLaISLEq/YxEO7pm10ePI+pDjvIajKgGvskUXGfT
 4yfYRqc9B8BEQUGW0Ofn
 =UqRv
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/kraxel/tags/ui-20180518-pull-request' into staging

ui: bugfixes, move x11 dependency to modules.

# gpg: Signature made Fri 18 May 2018 08:40:41 BST
# gpg:                using RSA key 4CB6D8EED3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>"
# gpg:                 aka "Gerd Hoffmann <gerd@kraxel.org>"
# gpg:                 aka "Gerd Hoffmann (private) <kraxel@gmail.com>"
# Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138

* remotes/kraxel/tags/ui-20180518-pull-request:
  sdl: Move use of surface pointer below check for whether it is NULL
  ui: add x_keymap.o to modules
  console: Avoid segfault in screendump

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
Peter Maydell 2018-05-18 11:39:43 +01:00
commit 30d9081d64
4 changed files with 17 additions and 7 deletions

View File

@ -20,6 +20,8 @@ common-obj-$(CONFIG_MILKYMIST) += milkymist-vgafb.o
common-obj-$(CONFIG_ZAURUS) += tc6393xb.o
common-obj-$(CONFIG_MILKYMIST_TMU2) += milkymist-tmu2.o
milkymist-tmu2.o-cflags := $(X11_CFLAGS)
milkymist-tmu2.o-libs := $(X11_LIBS)
obj-$(CONFIG_OMAP) += omap_dss.o
obj-$(CONFIG_OMAP) += omap_lcdc.o

View File

@ -15,10 +15,6 @@ common-obj-$(CONFIG_COCOA) += cocoa.o
common-obj-$(CONFIG_VNC) += $(vnc-obj-y)
common-obj-$(call lnot,$(CONFIG_VNC)) += vnc-stubs.o
common-obj-$(CONFIG_X11) += x_keymap.o
x_keymap.o-cflags := $(X11_CFLAGS)
x_keymap.o-libs := $(X11_LIBS)
# ui-sdl module
common-obj-$(CONFIG_SDL) += sdl.mo
ifeq ($(CONFIG_SDLABI),1.2)
@ -46,6 +42,13 @@ gtk.mo-objs += gtk-gl-area.o
endif
endif
ifeq ($(CONFIG_X11),y)
sdl.mo-objs += x_keymap.o
gtk.mo-objs += x_keymap.o
x_keymap.o-cflags := $(X11_CFLAGS)
x_keymap.o-libs := $(X11_LIBS)
endif
common-obj-$(CONFIG_CURSES) += curses.mo
curses.mo-objs := curses.o
curses.mo-cflags := $(CURSES_CFLAGS)

View File

@ -372,6 +372,11 @@ void qmp_screendump(const char *filename, bool has_device, const char *device,
graphic_hw_update(con);
surface = qemu_console_surface(con);
if (!surface) {
error_setg(errp, "no surface");
return;
}
ppm_save(filename, surface, errp);
}

View File

@ -36,9 +36,7 @@ void sdl2_2d_update(DisplayChangeListener *dcl,
struct sdl2_console *scon = container_of(dcl, struct sdl2_console, dcl);
DisplaySurface *surf = qemu_console_surface(dcl->con);
SDL_Rect rect;
size_t surface_data_offset = surface_bytes_per_pixel(surf) * x +
surface_stride(surf) * y;
size_t surface_data_offset;
assert(!scon->opengl);
if (!surf) {
@ -48,6 +46,8 @@ void sdl2_2d_update(DisplayChangeListener *dcl,
return;
}
surface_data_offset = surface_bytes_per_pixel(surf) * x +
surface_stride(surf) * y;
rect.x = x;
rect.y = y;
rect.w = w;