tevent_req deferr tevent_create_immediate
authorStefan Metzmacher <metze@samba.org>
Thu, 5 Dec 2013 09:36:10 +0000 (10:36 +0100)
committerStefan Metzmacher <metze@samba.org>
Wed, 12 Mar 2014 23:04:50 +0000 (00:04 +0100)
lib/tevent/tevent_req.c

index c86fb68f8013dc4270ad563bbed5b7cb9be12800..ea899fc64b4d9f0caa18419a6d3dedb190037098 100644 (file)
@@ -73,11 +73,11 @@ struct tevent_req *_tevent_req_create(TALLOC_CTX *mem_ctx,
        req->internal.private_type      = type;
        req->internal.create_location   = location;
        req->internal.state             = TEVENT_REQ_IN_PROGRESS;
-       req->internal.trigger           = tevent_create_immediate(req);
-       if (!req->internal.trigger) {
-               talloc_free(req);
-               return NULL;
-       }
+//     req->internal.trigger           = tevent_create_immediate(req);
+//     if (!req->internal.trigger) {
+//             talloc_free(req);
+//             return NULL;
+//     }
 
        data = talloc_zero_size(req, data_size);
        if (data == NULL) {
@@ -210,6 +210,10 @@ static void tevent_req_trigger(struct tevent_context *ev,
 struct tevent_req *tevent_req_post(struct tevent_req *req,
                                   struct tevent_context *ev)
 {
+       req->internal.trigger = tevent_create_immediate(req);
+       if (!req->internal.trigger) {
+               return NULL;
+       }
        tevent_schedule_immediate(req->internal.trigger,
                                  ev, tevent_req_trigger, req);
        return req;