[vlc-devel] Handling deadlock between display:Open() and vout_window_ReportSize()

Alexandre Janniaux ajanni at videolabs.io
Mon Dec 16 09:50:39 CET 2019


On Sun, Dec 15, 2019 at 08:55:03PM +0200, Rémi Denis-Courmont wrote:
> Le sunnuntaina 15. joulukuuta 2019, 19.05.15 EET Alexandre Janniaux a écrit :
> > Ok, I'll try to find another model matching the current
> > intents of the code and my use case.
> I don't even get why you want to mess the core.

I don't think I'm messing anything, and neither that this is
polite to tell think like this politely especially given that
I didn't send any patch yet. Please use my private mail for
such comments.

> If you don't want events to block, you can send them from a thread like the
> ASCII Art output already does. Or use a loop idle event or other deferred
> execution callback if that exists.

The caca.c output is not windowed, and the thread that you're
mentioning seems to be sending events during the lifetime of
the vout, meaning after Open() as blocks are pushed in
Prepare. Can you explain how it can be applied here?

If that's what you're asking, I **can** use a non-blocking
dispatch to the main thread, but then what do I return in the
Open() as the view is not binded yet?

Alexandre Janniaux

More information about the vlc-devel mailing list