Wolfgang Rohdewald wrote: > On Donnerstag 30 Juni 2005 16:53, Klaus Schmidinger wrote: > >>IIRC we already had this discussion some time ago. >>The point is that you're not supposed to call any of the skin >>functions from a thread. These functions are only supposed to be called >>by VDR itself. > > > how else can a plugin display a message or ask a question? since > cInterface::Confirm() also calls Skins.Message(), I suppose Confirm() > is also illegal for plugins? > > this is how muggle has always been doing this: > > #if VDRVERSNUM >= 10307 > Skins.Message (mtInfo, buffer,duration); > Skins.Flush (); > #else > Interface->Status (buffer); > Interface->Flush (); > #endif > > and > > if (!Interface->Confirm(tr("Import items?"))) > return false; Sorry, I was a little too vague here. What I meant to say was that these functions shall only be called from the _foreground_ thread (the one that VDR's main loop runs in). Klaus