On Thu, Jun 16, 2016 at 09:59:10AM +0800, Chao Peng wrote:
> commit f8c75b2486 (vnc: Initialization stubs) removed CONFIG_VNC in vl.c
> code. However qemu_find_opts("vnc") is NULL when vnc is configured out.
> Crash will happen in qemu_opts_foreach() before stub vnc_init_func() is
> called. This patch add it back.
>
> Cc: Eduardo Habkost <[email protected]>
> Signed-off-by: Chao Peng <[email protected]>
> ---
> Note: Of course there is other ways to fix it (e.g. check against NULL).
> I feel comfortable in any way.
We can apply this fix now and then consider alternative ways to
avoid the #ifdef.
Reviewed-by: Eduardo Habkost <[email protected]>
Applied to my machine-next branch. Thanks!
> ---
> vl.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/vl.c b/vl.c
> index 45eff56..2088491 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -4557,8 +4557,10 @@ int main(int argc, char **argv, char **envp)
> os_setup_signal_handling();
>
> /* init remote displays */
> +#ifdef CONFIG_VNC
> qemu_opts_foreach(qemu_find_opts("vnc"),
> vnc_init_func, NULL, NULL);
> +#endif
> if (show_vnc_port) {
> char *ret = vnc_display_local_addr("default");
> printf("VNC server running on '%s'\n", ret);
> --
> 1.8.3.1
>
--
Eduardo