[vlc-devel] Core input code race condition

Rémi Denis-Courmont rem at videolan.org
Thu Mar 5 18:47:00 CET 2009


Le mercredi 4 mars 2009 09:14:25 xxcv, vous avez écrit :
> #0  0x77170e38 in KERNEL32!CreateJobObjectA ()
>    from C:\Windows\syswow64\kernel32.dll
> #1  0x6a58a5b6 in vlc_mutex_lock (p_mutex=0xababab57) at misc/threads.c:370
> #2  0x08fbfa6e in InteractionDialog::Finish (this=0x17d6d660, i_ret=1)
>     at dialogs/interaction.cpp:243
> #3  0x08fc0ec7 in InteractionDialog::InteractionDialog (this=0x17d6d660,
>     _p_intf=0xcf3dd50, _p_dialog=0x17548760) at dialogs/interaction.cpp:154
> #4  0x08f9d72e in DialogsProvider::doInteraction (this=0xd01d2e8,
>     p_arg=0x17df8680) at dialogs_provider.cpp:681
> #5  0x09573462 in QObject::event ()
>     at /include/qt4/QtCore/../src/corelib/kernel/qabstractitemmodel.h:61
> #6  0x090ad29c in QApplicationPrivate::notify_helper ()
>     at /include/qt4/QtCore/../src/corelib/kernel/qabstractitemmodel.h:61
> #7  0x090ad3bc in QApplication::notify ()
>     at /include/qt4/QtCore/../src/corelib/kernel/qabstractitemmodel.h:61
> #8  0x0957851c in QCoreApplication::notifyInternal ()
>     at /include/qt4/QtCore/../src/corelib/kernel/qabstractitemmodel.h:61
> #9  0x0d01d2e8 in ?? ()
> #10 0x17b02d88 in ?? ()
> #11 0x1027dd68 in ?? ()
> #12 0x3ee6fbb8 in ?? ()
> #13 0x12b9ed68 in ?? ()
> #14 0x10d2feb8 in ?? ()
> #15 0x00ffffff in ?? ()
> #16 0x00000000 in ?? ()

It is well-known that the "interaction" (not to be confused with the UIs) code 
is super mega utter deep complete crap.

This is very easy to reproduce: create a long playlist (e.g. M3U) of files 
that don't exist. Open it in VLC. Wait a few instants. Caboom.

I've been trying improve the interaction code, but its design is so 
intrisincally stupid, that I have not gotten round to fixing it, and I am 
more than fed up with it.

-- 
Rémi Denis-Courmont



More information about the vlc-devel mailing list