>> that it expects to free before returning. Do you know if this might be
It seems to works for FLAC, but I can't trust it either. Besides
memory leaks, mutexes might remain locked, and indirectly deadlock
>> I may need to fall back on the vio stuff. How does a sf_vio_read or
Well, forget my cancelling strategy -- errors could occur even if one
writes a trivial layer (vio_read == read). An I/O API *must* specify
error handling. This is not some exotic use case...
>From TFC, psf_fread ():
return psf->vio.read ...
(i.e. no processing), while the non-virtual branch returns the partial
count if an error ever occurs. So I guess I should return some short
count on error.
Anyway, for cancelling requests EOF works -- indeed as long as one can
"get out of the sf_read jail free" anything works.
Linux-audio-dev mailing list