New commits:
http://git.directfb.org/?p=core/DirectFB.git;a=commit;h=259d8890d3103da98c31b39499f6ee22930da9fa
commit 259d8890d3103da98c31b39499f6ee22930da9fa
Author: Denis Oliver Kropp <[EMAIL PROTECTED](none)>
Date: Mon May 28 10:46:00 2007 +0200
API break!
Changed call handler function type.
+typedef enum {
+ FCHR_RETURN,
+ FCHR_RETAIN
+} FusionCallHandlerResult;
+
+typedef FusionCallHandlerResult (*FusionCallHandler) (int
caller, /* fusion id of the caller */
+ int
call_arg, /* optional call parameter */
+ void
*call_ptr, /* optional call parameter */
+ void *ctx,
/* optional handler context */
+ unsigned int serial,
+ int
*ret_val );
The return value defines the library's behaviour after exiting from the
handler.
To return a value immediately, write to *ret_val and return FCHR_RETURN.
If you want to make a call later on to fusion_call_return() yourself, use
FCHR_RETAIN.
The new serial value allows to have more than one call pending while calls
can
be returned in any order. The caller is still blocked on its single call,
of course.
+DirectResult fusion_call_return ( FusionCall *call,
+ unsigned int serial,
+ int val );
lib/fusion/call.c | 88 ++++++++++++++++++++++++++++++++++++++----------
lib/fusion/call.h | 30 +++++++++++-----
lib/fusion/object.c | 18 +++++-----
lib/fusion/types.h | 8 ++--
src/core/input.c | 18 ++++++----
tests/fusion_reactor.c | 14 ++++---
6 files changed, 122 insertions(+), 54 deletions(-)
_______________________________________________
directfb-cvs mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-cvs