libeio: discrepancy between the manual and the code

Konstantin Osipov kostja.osipov at
Wed Jan 23 15:22:24 CET 2013


libeio manual says that:

Even if cancelled, the finish callback will still be invoked - the callbacks
of all cancellable requests need to check whether the request has been
cancelled by calling EIO_CANCELLED (req):
--end quote

Yet in the implementation does not do this

#ifndef EIO_FINISH
# define EIO_FINISH(req)  ((req)->finish) && !EIO_CANCELLED (req) ? (req)->finish (req) : 0

In my view, it's important to make sure the callback is always, 
otherwise it's hard to reliably manage resources associated
with eio function arguments.

-- - an efficient, extensible in-memory data store

More information about the libev mailing list