From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52350) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ve3Cs-0004zY-0I for qemu-devel@nongnu.org; Wed, 06 Nov 2013 08:31:44 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Ve3Cl-0000G9-6M for qemu-devel@nongnu.org; Wed, 06 Nov 2013 08:31:37 -0500 Received: from e28smtp06.in.ibm.com ([122.248.162.6]:51342) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ve3Ck-0000CW-Io for qemu-devel@nongnu.org; Wed, 06 Nov 2013 08:31:31 -0500 Received: from /spool/local by e28smtp06.in.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Wed, 6 Nov 2013 19:01:29 +0530 Received: from d28relay03.in.ibm.com (d28relay03.in.ibm.com [9.184.220.60]) by d28dlp01.in.ibm.com (Postfix) with ESMTP id 58922E004A for ; Wed, 6 Nov 2013 19:03:12 +0530 (IST) Received: from d28av04.in.ibm.com (d28av04.in.ibm.com [9.184.220.66]) by d28relay03.in.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id rA6DVKSc46071966 for ; Wed, 6 Nov 2013 19:01:20 +0530 Received: from d28av04.in.ibm.com (localhost [127.0.0.1]) by d28av04.in.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id rA6DVQsK014209 for ; Wed, 6 Nov 2013 19:01:26 +0530 Message-ID: <527A44AB.7040607@linux.vnet.ibm.com> Date: Wed, 06 Nov 2013 21:31:23 +0800 From: Lei Li MIME-Version: 1.0 References: <1378285636-7091-1-git-send-email-lilei@linux.vnet.ibm.com> <526910B3.6010402@linux.vnet.ibm.com> In-Reply-To: <526910B3.6010402@linux.vnet.ibm.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH resend] sdl: Reverse support for video mode setting List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel Cc: sascha@srlabs.de, Anthony Liguori , Lei Li Ping^2 On 10/24/2013 08:21 PM, Lei Li wrote: > This patch has been confirmed by the reporter himself as > link below, > > https://bugs.launchpad.net/qemu/+bug/1216368 > > It has been on the mailing list for a while, could it be merged? PING... > > On 09/04/2013 05:07 PM, Lei Li wrote: >> Currently, If the setting of video mode failed, qemu will exit. It >> should go back to the previous setting if the new screen resolution >> failed. This patch fixes LP#1216368, add support to revert to existing >> surface for the failure of video mode setting. >> >> Reported-by: Sascha Krissler >> Signed-off-by: Lei Li >> --- >> ui/sdl.c | 23 +++++++++++++++++++---- >> 1 files changed, 19 insertions(+), 4 deletions(-) >> >> diff --git a/ui/sdl.c b/ui/sdl.c >> index 39a42d6..9d8583c 100644 >> --- a/ui/sdl.c >> +++ b/ui/sdl.c >> @@ -86,6 +86,7 @@ static void sdl_update(DisplayChangeListener *dcl, >> static void do_sdl_resize(int width, int height, int bpp) >> { >> int flags; >> + SDL_Surface *tmp_screen; >> >> // printf("resizing to %d %d\n", w, h); >> >> @@ -98,12 +99,26 @@ static void do_sdl_resize(int width, int height, >> int bpp) >> if (gui_noframe) >> flags |= SDL_NOFRAME; >> >> - real_screen = SDL_SetVideoMode(width, height, bpp, flags); >> + tmp_screen = SDL_SetVideoMode(width, height, bpp, flags); >> if (!real_screen) { >> - fprintf(stderr, "Could not open SDL display (%dx%dx%d): %s\n", >> width, >> - height, bpp, SDL_GetError()); >> - exit(1); >> + if (!tmp_screen) { >> + fprintf(stderr, "Could not open SDL display (%dx%dx%d): >> %s\n", >> + width, height, bpp, SDL_GetError()); >> + exit(1); >> + } >> + } else { >> + /* >> + * Revert to the previous video mode if the change of >> resizing or >> + * resolution failed. >> + */ >> + if (!tmp_screen) { >> + fprintf(stderr, "Failed to set SDL display (%dx%dx%d): >> %s\n", >> + width, height, bpp, SDL_GetError()); >> + return; >> + } >> } >> + >> + real_screen = tmp_screen; >> } >> >> static void sdl_switch(DisplayChangeListener *dcl, > > -- Lei