[vdr] Seqfault of cutting thread on "Low disk space!"

Klaus Schmidinger Klaus.Schmidinger at cadsoft.de
Wed Dec 7 22:06:49 CET 2005


Andreas Brachold wrote:
> Hi, 
> 
> we*) notice a seqfault of cutting Thread on "Low disk space!", if OSD
> used during cutting process.
> 
> i think, reason is a call of a OSD function from background cutting
> thread. 
> 
> I tested only on 1.3.32, but 1.3.37 should also affected 
> 
> (gdb) thread 5 
> ...
> 
> Here a possibly solution : 
> 
> --- recording.c.org     2005-09-11 17:52:31.000000000 +0200
> +++ recording.c 2005-12-07 21:33:18.000000000 +0100
> @@ -144,7 +144,7 @@
>             }
>          // Unable to free disk space, but there's nothing we can do
> about that...
>          isyslog("...no old recording found, giving up");
> -        Interface->Confirm(tr("Low disk space!"), 30);
> +        Skins.QueueMessage(mtWarning, tr("Low disk space!"), 30);
>          }
>       LastFreeDiskCheck = time(NULL);
>       }

You're absolutely right - calling Interface->Confirm() from
a thread is a no-no. Silly me, telling others not to do this,
while doing it myself...

Thanks for the fix.

> *) I'm not the original bug reporter, but i could this seqfault
> reproduce
> http://www.vdr-portal.de/board/thread.php?threadid=42375&sid=
> 
> 
> Cu,
> Andreas

But I take it that you have suggested this fix, right?
If not, please tell the one who did to come forward so
that he can be given credit in the VDR/CONTRIBUTORS
file.

Klaus



More information about the vdr mailing list