[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] git bisect results
From: |
Erik Rull |
Subject: |
Re: [Qemu-devel] git bisect results |
Date: |
Mon, 30 Jan 2012 14:17:37 +0100 (CET) |
On January 30, 2012 at 12:52 PM Jan Kiszka <address@hidden> wrote:
> On 2012-01-30 12:34, Erik Rull wrote:
> > Hi Jan,
> >
> > I'm sorry, but this does not solve my issue. I applied the patch and
> > crosschecked that the resulting file looks fine.
> >
> > The final function looks like:
> >
> > static void sdl_grab_start(void)
> > {
> > /*
> > * If the application is not active, do not try to enter grab state.
This
> > * prevents 'SDL_WM_GrabInput(SDL_GRAB_ON)' from blocking all the
> > * application (SDL bug).
> > */
> > if (!(SDL_GetAppState() & SDL_APPINPUTFOCUS)) {
> > return;
> > }
> > if (guest_cursor) {
> > SDL_SetCursor(guest_sprite);
> > if (!kbd_mouse_is_absolute() && !absolute_enabled)
> > SDL_WarpMouse(guest_x, guest_y);
> > } else
> > sdl_hide_cursor();
> > SDL_WM_GrabInput(SDL_GRAB_ON);
> > gui_grab = 1;
> > sdl_update_caption();
> > }
>
> That makes no sense as gui_grab must be 1 now. Please retry your
> previous instrumentation.
>
> Thanks,
> Jan
>
You're right. So I added the instrumentation again.
Still looks strange.
So I added into the sdl_grab_start() a printf.
Wow - a lot of output!
This pointed me to all other sdl_grab_start() calls (and in additon to that
all sdl_grab_end() calls).
And here are the results of the qemu voting :-)
I already assigned a usable name to the printf output that is directly one
line above the corresponding sdl_grab_*() call, so you should be able to
find this easily in your code as well.
The huge number of recurring printf's are:
sdl_grab_start() called from absolute_mouse_grab()
sdl_grab_end() called from handle_activation()
sdl_grab_start() called from absolute_mouse_grab()
sdl_grab_end() called from handle_activation()
sdl_grab_start() called from absolute_mouse_grab()
sdl_grab_end() called from handle_activation()
sdl_grab_start() called from absolute_mouse_grab()
sdl_grab_end() called from handle_activation()
sdl_grab_start() called from absolute_mouse_grab()
sdl_grab_end() called from handle_activation()
sdl_grab_start() called from absolute_mouse_grab()
sdl_grab_end() called from handle_activation()
sdl_grab_start() called from absolute_mouse_grab()
sdl_grab_end() called from handle_activation()
Any idea how to proceed?
Maybe the first two if-statements in handle_activation() cause the problem?
Because there the two given functions are called in sequence if both
if-clauses are valid one after the other. Maybe the first one sets the
state so that the second if is valid, too. Maybe a simple else if solves
the issue? I'm not familiar with the variables that are checked here, so
it's just a guess.
Best regards,
Erik
- Re: [Qemu-devel] git bisect results, (continued)
- Re: [Qemu-devel] git bisect results, Erik Rull, 2012/01/26
- Re: [Qemu-devel] git bisect results, Jan Kiszka, 2012/01/26
- Re: [Qemu-devel] git bisect results, Jan Kiszka, 2012/01/27
- Re: [Qemu-devel] git bisect results, Jan Kiszka, 2012/01/28
- Re: [Qemu-devel] git bisect results, Erik Rull, 2012/01/28
- Re: [Qemu-devel] git bisect results, Jan Kiszka, 2012/01/28
- Re: [Qemu-devel] git bisect results, Erik Rull, 2012/01/28
- Re: [Qemu-devel] git bisect results, Jan Kiszka, 2012/01/28
Re: [Qemu-devel] git bisect results, Erik Rull, 2012/01/30