[Spice-devel] [PATCH spice-gtk] win32: fix coroutine assertion when switching to TLS port

Christophe Fergeau cfergeau at redhat.com
Mon Aug 25 03:04:28 PDT 2014


On Thu, Aug 21, 2014 at 07:16:11PM +0200, Marc-André Lureau wrote:
> Since v0.21-35-gbaa51c5, there are some new coroutine preconditions.
> 
> The winfiber implementation can reach, when the structure isn't cleared,
> which happens when switching channel connection to TLS port and the
> coroutine is recycled.
> 
> CRITICAL **: coroutine_yieldto: assertion '!to->exited' failed
> 
> In a near future, it would be nice to use the safer implementation
> proposed for glib, see bgo#719362 (using a private copy)
> ---
>  gtk/coroutine_winfibers.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/gtk/coroutine_winfibers.c b/gtk/coroutine_winfibers.c
> index a5ab3ba..6f96c74 100644
> --- a/gtk/coroutine_winfibers.c
> +++ b/gtk/coroutine_winfibers.c
> @@ -60,6 +60,7 @@ void coroutine_init(struct coroutine *co)
>  			g_error("ConvertThreadToFiber() failed");
>  	}
>  
> +	co->exited = 0;
>  	co->fiber = CreateFiber(0, &coroutine_trampoline, co);
>  	if (co->fiber == NULL)
>  		g_error("CreateFiber() failed");
> -- 

ACK.

Christophe
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/spice-devel/attachments/20140825/a60a3e34/attachment.sig>


More information about the Spice-devel mailing list