eina: Fix then callbacks prototypes

Eina_Error is not passed by pointer anymore, which could cause invalid
pointer access in promise compositions (all and race).

Also added Eina_Promise* to prototypes.
This commit is contained in:
Felipe Magno de Almeida 2016-05-26 13:03:05 -03:00
parent a7e5487439
commit 3ffe38b0c3
1 changed files with 6 additions and 6 deletions

View File

@ -548,7 +548,7 @@ eina_promise_owner_default_call_then(Eina_Promise_Owner* promise)
}
static void
_eina_promise_all_compose_then_cb(_Eina_Promise_Default_Owner* promise, void* value EINA_UNUSED)
_eina_promise_all_compose_then_cb(_Eina_Promise_Default_Owner* promise, void* value EINA_UNUSED, Eina_Promise* promise_then EINA_UNUSED)
{
_Eina_Promise_Iterator* iterator;
@ -563,12 +563,12 @@ _eina_promise_all_compose_then_cb(_Eina_Promise_Default_Owner* promise, void* va
}
static void
_eina_promise_all_compose_error_then_cb(_Eina_Promise_Default_Owner* promise, Eina_Error const* error)
_eina_promise_all_compose_error_then_cb(_Eina_Promise_Default_Owner* promise, Eina_Error error, Eina_Promise* promise_then EINA_UNUSED)
{
if (!promise->promise.has_finished)
{
promise->promise.has_finished = promise->promise.has_errored = EINA_TRUE;
promise->promise.error = *error;
promise->promise.error = error;
_eina_promise_finish(promise);
}
}
@ -718,7 +718,7 @@ _eina_promise_race_free(_Eina_Promise_Race_Value_Type* value)
}
static void
_eina_promise_race_compose_then_cb(struct _Eina_Promise_Race_Information* info, void* value EINA_UNUSED)
_eina_promise_race_compose_then_cb(struct _Eina_Promise_Race_Information* info, void* value EINA_UNUSED, Eina_Promise* promise_then EINA_UNUSED)
{
_Eina_Promise_Default_Owner* race_promise;
_Eina_Promise_Race_Value_Type *race_value;
@ -735,7 +735,7 @@ _eina_promise_race_compose_then_cb(struct _Eina_Promise_Race_Information* info,
}
static void
_eina_promise_race_compose_error_then_cb(struct _Eina_Promise_Race_Information* info, Eina_Error const* error)
_eina_promise_race_compose_error_then_cb(struct _Eina_Promise_Race_Information* info, Eina_Error error, Eina_Promise* promise_then EINA_UNUSED)
{
_Eina_Promise_Default_Owner* race_promise;
_Eina_Promise_Race_Value_Type *race_value;
@ -746,7 +746,7 @@ _eina_promise_race_compose_error_then_cb(struct _Eina_Promise_Race_Information*
if (!race_promise->promise.has_finished)
{
race_value->promise_index = info - &race_value->promises[0];
eina_promise_owner_error_set(&race_promise->owner_vtable, *error);
eina_promise_owner_error_set(&race_promise->owner_vtable, error);
}
}