ber if it was fastlane, but some software I've used even
did a REST call to search for similar issues (issues with similar
backtrace, not sure how they implemented that).
BR,
--
Gustavo Sverzut Barbieri
--
Mobile: +55 (16) 99354-9890
--
ve the returned value to a function that calls free. The
> compiler might be unable to detect that and assume that it can move out the
> function call, which causes a multi-free call on the same pointer.
>
> Greetings
> bu5hm4n
>
>
> Am 24. Mai 2018 15:58:01 MESZ schrieb Gusta
> - eina_module_environment_path_get(const char *env, const char *sub_dir)
> EINA_PURE EINA_MALLOC EINA_ARG_NONNULL(1, 2);
> + eina_module_environment_path_get(const char *env, const char *sub_dir)
> EINA_MALLOC EINA_ARG_NONNUL
---
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> ___
> enlightenment-devel mailing list
> enlightenment-devel@l
st to not ref, I will fix this the other way around.
>
> On May 2, 2018 7:33 AM, Gustavo Sverzut Barbieri wrote:
>> this doesn't look right, we don't ref in other cases...
>>
>> On Tue, May 1, 2018 at 2:40 PM, Cedric BAIL cedric.b...@free.fr wro
st Eina_Value_Type _EINA_VALUE_TYPE_BASICS[]
> = {
> NULL, /* no convert from */
> _eina_value_type_stringshare_vset,
> _eina_value_type_stringshare_pset,
> -_eina_value_type_string_common_pget
> +_eina_value_type_stringshare_pget
>},
On Wed, Apr 11, 2018 at 2:08 PM, Carsten Haitzler wrote:
> On Wed, 11 Apr 2018 13:21:22 -0300 Gustavo Sverzut Barbieri
> said:
>
>> On Wed, Apr 11, 2018 at 2:43 AM, Carsten Haitzler
>> wrote:
>> >
>> > raster pushed a commit to branch master.
>> >
not errors. fix that to not try and send such empty payloads
>
> @fix
i guess this is due the incorrect code that handled `data == NULL ||
size == 0` as errors at efl-io-writer implementations...
IMO should be only no-ops, so people don't have to spread this kind
CINIT(INFILESIZE_LARGE, OFF_T, 115),
> CINIT(POSTFIELDSIZE_LARGE, OFF_T, 120),
> CINIT(COOKIELIST, OBJECTPOINT, 135),
> + CINIT(MAX_SEND_SPEED_LARGE, OFF_T, 145),
> + CINIT(MAX_RECV_SPEED_LARGE, OFF_T, 146),
> CINIT(OPENSOCKETFUNCTION, FUNCTIONPOINT, 163),
> CINIT(OPEN
;t exec... uh oh. HAAAALP!
> exit(-122);
> - return EINA_FALSE;
> + return NULL;
this is one place you could notify the main process and cause it to
reject with the errno.
--
Gustavo Sverzut Barbieri
--
Mobile: +55 (16) 99354-9890
--
JECT_CLASS);
> EINA_SAFETY_ON_NULL_GOTO(pd, end);
> + if (pd->invalidate) goto end;
I'd use EINA_SAFETY_ON_TRUE_GOTO(pd->invalidate, end);
so it will emit a message.
--
Gustavo Sverzut Barbieri
--
Mobile: +55 (16) 99354-9890
-
On Wed, Mar 14, 2018 at 2:50 AM, Carsten Haitzler wrote:
> On Tue, 13 Mar 2018 10:35:15 -0300 Gustavo Sverzut Barbieri
> said:
>
>> On Tue, Mar 13, 2018 at 1:17 AM, Carsten Haitzler
>> wrote: [...]
>> >>
>> >> > > >> for instan
gt;> convention and most people can just throw away everything once
>> ECANCELED.
>>
>> What you mean is different: if you explicitly efl_task_end(obj), then
>> SURE, signal is sent to the process, which finishes and that is
>> resolved/rejected as the future.
>>
ah ok! :-)
On Mon, Mar 12, 2018 at 1:07 AM, Carsten Haitzler wrote:
> On Sun, 11 Mar 2018 16:51:47 -0300 Gustavo Sverzut Barbieri
> said:
>
>> On Sat, Mar 10, 2018 at 8:04 AM, Carsten Haitzler
>> wrote:
>> > raster pushed a commit to branch master.
>> >
On Mon, Mar 12, 2018 at 1:01 AM, Carsten Haitzler wrote:
>
> On Sun, 11 Mar 2018 16:49:37 -0300 Gustavo Sverzut Barbieri
> said:
>
> > On Sat, Mar 10, 2018 at 6:42 AM, Carsten Haitzler
> > wrote:
> > > On Fri, 9 Mar 2018 10:52:59 -0300 Gustavo Sverzut Barbieri
, 2018 at 8:51 PM, Gustavo Sverzut Barbieri
> wrote:
> > On Sat, Mar 10, 2018 at 8:04 AM, Carsten Haitzler
> wrote:
> >> raster pushed a commit to branch master.
> >>
> >>
> http://git.enlightenment.org/core/efl.git/commit/?id=965f257e7
you used pd->promise here, there is no need to keep that flag.
I'm not sure why you're trying to co-exist promise with-no-promise for
this API, this will just add confusion and code to maintain. Here
you're adding one more method, one more event, etc... :-(
--
G
On Sat, Mar 10, 2018 at 6:42 AM, Carsten Haitzler wrote:
> On Fri, 9 Mar 2018 10:52:59 -0300 Gustavo Sverzut Barbieri
>
> said:
>
>> On Thu, Mar 8, 2018 at 4:58 AM, Carsten Haitzler
>> wrote:
>> > On Thu, 1 Mar 2018 14:11:26 -0300 Gustavo Sverzut Barbieri
>
On Thu, Mar 8, 2018 at 4:58 AM, Carsten Haitzler wrote:
> On Thu, 1 Mar 2018 14:11:26 -0300 Gustavo Sverzut Barbieri
>
> said:
>
>> On Wed, Feb 28, 2018 at 2:33 AM, Carsten Haitzler
>> wrote:
>> > On Tue, 27 Feb 2018 18:34:59 -0500 Cedric Bail said:
>
On Tue, Mar 6, 2018 at 5:40 AM, Carsten Haitzler wrote:
> On Mon, 5 Mar 2018 11:00:27 -0300 Gustavo Sverzut Barbieri
>
> said:
>
>> On Sat, Mar 3, 2018 at 2:02 AM, Carsten Haitzler
>> wrote:
>> > I just pushed:
>> >
>> > eb0b8
s, these guys just messed it up".
I'm in favor of interfaces for things that are the same, so if the
methods in process and threads share the same concept, behavior and
parameters, make them an interface... when switching from process x
threads one doesn't need to "sed" eve
loop_promise_simple_data_mp_free(d);
> }
this is strange: d comes from the mempool and all calls are protected
with "is p valid in the mempool", which should evaluate to false.
then you're just hiding some other problem.
--
Gustavo Sverzut Barbieri
destruction if still there and another line in the "where the event
> happens"
> to either call success or failure with the future data... but it needs to be
> far far far simpler than it is.
you just realize that the code is always the same, right? there is no
magic, we
___________
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
--
Gustavo Sverzut Barbieri
--
Mobile: +55 (16) 99354
y on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlighte
a great tool that you provide here, but I
> doubt other languages than Python will adopt this straight away. Unless we
> start working on a new binding, maybe?
well, point is you can create a new binding just replacing the text
files that are the template... so maybe
On Thu, Jan 11, 2018 at 5:54 AM, Carsten Haitzler wrote:
> On Wed, 10 Jan 2018 16:52:26 -0200 Gustavo Sverzut Barbieri
...
>> however, in a more generic OOP system this makes things unusable, as
>> we're discussing in this thread.
>>
>> parents: wisely we're
e multi-loop to be
done right... thus parent and loop provider thing must be enforced.
Not global/tls...
> one more point to consider is evas object manual_free, but i don't think
> any of the above can fix this:
> - invalidator (called by efl_inv
> //ecore_event_add(ELM_CNP_EVENT_SELECTION_CHANGED, e,
> _wl_selection_changed_free, ev->display);
> - //efl_event_callback_call(sel->request_obj,
> EFL_SELECTION_EVENT_SELECTION_CHANGED, &e);
> + efl_event_callback_call(sel->request_obj,
> EFL_SELECTION_EVENT_SELECTIO
*
> + * If you already have a value and want to create a future that will
> + * resolve to it directly use the eina_future_resolved(), it has the
> + * same effect as creating a promise and immediately resolving it.
this comment is confusing here. If you have a value resolved,
hi all,
jpeg, i think that this "destruct" event should have a counterpart
method, like in GObject they have dispose + finalize, we could have
something like that to allow two clearly distinct phases:
- one to release references to others (our invalidate/terminate),
announces that everyone keep
Last-Modified/If-Modified-Since, Etag/If-None-Match...
respect Expiry, store in local files, like done for web runtimes).
TL;DR: it should but won't go away, so this virtualized file should be
renamed, however I have no suggestions as I'm bad at names :-)
--
Gustavo Sve
On Mon, Jan 8, 2018 at 4:53 AM, Carsten Haitzler wrote:
> On Fri, 5 Jan 2018 11:26:14 -0200 Gustavo Sverzut Barbieri
>
...
>> > see https://phab.enlightenment.org/T5522
>> >
>> > it has a lot more details in the todo now.
>> >
>> > btw i was
On Mon, Jan 8, 2018 at 3:38 AM, Jean-Philippe André wrote:
> On Fri, Jan 5, 2018 at 3:18 AM, Gustavo Sverzut Barbieri > wrote:
>
>> On Thu, Jan 4, 2018 at 2:59 PM, Andrew Williams
>> wrote:
>> > Hi,
>> >
>> > Apologies for the future/promise gaf
specific, but on unix maps to SIGUSR1 signal to
> the process - only called on main loop object]]
> + signal,usr2; [[System specific, but on unix maps to SIGUSR2 signal to
> the process - only called on main loop object]]
> + signal,hup; [[Sys
t;
> +static void
> +_ecore_signal_waitpid(Eina_Bool once, siginfo_t info)
> +{
> + pid_t pid;
> + int status;
> +
> + while ((pid = waitpid(-1, &status, WNOHANG)) > 0)
> + {
> +Ecore_Exe_Event_Del *e = _ecore_exe_event_del_new();
> +
> +
On Fri, Jan 5, 2018 at 11:04 AM, Carsten Haitzler wrote:
> On Fri, 5 Jan 2018 10:53:46 -0200 Gustavo Sverzut Barbieri
>
> said:
>
>> On Fri, Jan 5, 2018 at 4:04 AM, Carsten Haitzler
>> wrote:
>> > raster pushed a commit to branch master.
>> >
>
or my preference:
efl_loop_thread_pause(loop);
efl_loop_thread_resume(loop);
anyway, if by final EO api release we still offer efl_main_loop
helpers (I think we shouldn't!), then you can offer your helpers on
top of that.
--
Gustavo S
mething related to object lifecycle.
maybe "terminate"? as in:
- network connection: terminate, clear it should be closed and all
- gui element: terminate, clear it should be hidden and all
--
Gustavo Sverzut Barbieri
---
timeout).
If there is a wrapper for "events -> future" as said above, then
common stuff as "call me when efl.io.copier is done" will also be
automatic and fall in this category.
This is what most applications would ever use.
--
Gustavo Sverzut Barbieri
-
then things start to misbehave and it will be super-hard to fix...
since things won't crash, they won't fail to compile... they will just
be dispatched "elsewhere" and eventually this is freaking hard to
identify.
a good quality check for EFL would be t
return new Promise(loop, cb);
in the example above, the Promise constructor implemented in C would
be calling 2 EFL functions:
- efl_loop_future_scheduler_get()
- eina_promise_new()
And there is no need to expose efl_loop_future_scheduler_get() at all.
--
Gustavo Sverzut Barbieri
-
mentation, so it can be chained with other
promise/future... like in Python. This requires some extra work, it's
not trivial or auto-generated.
--
Gustavo Sverzut Barbieri
--
al work, so exposing this
method in ".eo" to be parseable by eolian will not be useful.
I recall that was the reason to not put it in ".eo", just in eo-only
and c-only header.
--
Gustavo Sverzut Barbieri
Value *value);
>
> #include "efl_loop_consumer.eo.h"
>
> -EAPI Eina_Future_Scheduler *efl_loop_future_scheduler_get(Eo *obj);
> +EAPI Eina_Future_Scheduler *efl_loop_future_scheduler_get(const Eo *obj);
you can remove this one, it's generated by eolian.
--
eclared as you said, but q66 still needs
to convert that part of the code, then we must properly annotate them.
but eina_future dispatches eina_value, which always carry a type...
then you can do something like:
printf("type %p (%s)\n", value.type, value.type ? value.type->name : NULL);
if (eina_main_loop_is())
> + return ecore_main_loop_get();
> return efl_provider_find(obj, EFL_LOOP_CLASS);
looks like that should be the fallback, not the first thing to check:
only check if the main loop if there is no provider for
EFL_LOOP_CL
ternal
> + */
> +EAPI void __eina_promise_cancel_all(void);
>
> /**
> * @}
> diff --git a/src/lib/eo/efl_future.c b/src/lib/eo/efl_future.c
> index aaa1d88a51..8f19a34e11 100644
> --- a/src/lib/eo/efl_future.c
> +++ b/src/lib/eo/efl_future.c
> @@ -52,5 +52,6 @@
CHECK(v, EINA_VALUE_TYPE_INT);
> + eina_value_get(&v, &val);
> +
> + return *eina_value_util_int_new(val * 2);
this leaks the newly allocated Eina_Value, it's better to use:
eina_value_int_init(val * 2)
> +static Eina_Va
On Tue, Dec 12, 2017 at 10:23 AM, Gustavo Sverzut Barbieri
wrote:
>> efl_future_Eina_FutureXXX_then(data, f);
>
> now must rename these efl_future_Eina_FutureXXX_then() helpers to
> efl_future_then().
>
> Worth remembering: efl_future_then() is the one that links/bin
asy validator would do extended checks for those types.
Eolian has the info to generate those, as we have builtin types.
I recall eina_future_race uses a custom struct and can serve as base
for such work.
--
Gustavo Sverzut Barbieri
not sure you need a type, I guess you can pass null, so it will accept
all types except error.
--
Gustavo Sverzut Barbieri
--
Mobile: +55 (16) 99354-9890
--
Check out the vibrant
+ evt = efl_dup(parent_ev);
>> > > > > ev = efl_data_scope_get(evt, EFL_INPUT_POINTER_CLASS);
>> > > > > if (!ev) return;
>> > > > >
>> > > > > @@ -936,7 +936,7 @@ _evas_event_source_multi_down_
>> > > >
const Eina_Future *dead EINA_UNUSED)
> {
> Eina_Bool *did = data;
> +
> + if (t.type == EINA_VALUE_TYPE_ERROR)
> + return t;
if you just want the success case, you can use the "easy&
t; + fprintf(stderr, "Failed to write test file\n");
although this works for file, it's not a good example/approach, since
you should check and monitor "can_write" events.
likewise, monitor "can_read" before you call "efl_io_reader_read()".
The bes
On Mon, Nov 27, 2017 at 4:49 AM, Jean-Philippe André wrote:
> On Sun, Nov 26, 2017 at 9:25 PM, Gustavo Sverzut Barbieri <
> barbi...@gmail.com> wrote:
>
>> On Thu, Nov 23, 2017 at 9:58 PM, Pawel Aksiutowicz
>> wrote:
>> > ecore_con: quiet
r) : 0;
> + volatile uint8_t pass_len = pass ? strlen(pass) : 0;
what? someone care to explain why adding "volatile" here quites
clobbered... what was clobbered? it makes no sense to me to add these
volatile :-S
--
Gustavo Sverzut Barbieri
---
t MY_EVENT_CLASS for legacy is a single
one: ECORE_EVENT_LEGACY_CLASS. It will contain "legacy_type: int"
property, which uses the global integers to work on. Then
ecore_event_callback_add() will connect efl_event_callback_call()
using a proxy/wrapper, that will filter by
b, data, free_func... and thus finding it is a simple
list walk.
bindings will have the same cb/free_func, but different data.
--
Gustavo Sverzut Barbieri
--
Mobile: +55 (16) 99354-9890
t can be
>> used as event_class). Or impose it's always a structure and in this
>> case pass the Eina_Value_Struct_Desc instead of Eina_Value_Type as
>> "event_class".
>
> eina value might be another option for the event object to be posted, but i
&
tion to send an event
>
> - "ecore event info" EO class:
> an ecore event that carries no info could even use null
> event info is a base class with a link to its type
> the loop creates and manages these temporary objects as events are being
> processed
>
>
> Th
on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> ___________
> enlightenment-devel mailing list
> enlightenment-devel@lists.sou
should not be generated with a max size,
> as it becomes unreadable.
>
> --
> Jean-Philippe André
> --
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, S
y is deep-copy, it may need to walk thru arrays, lists and
>>> hashes... and some values may not provide copy, then it will fail.
>
> Right. Maybe actually return an Eina_Error actually ? Not sure which solution
> is best actually. One let you have a chance to properly de
;s most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
--
Gustavo Sverzut Barbieri
---
On Tue, Nov 14, 2017 at 10:37 PM, Carsten Haitzler wrote:
> On Tue, 14 Nov 2017 14:51:38 -0200 Gustavo Sverzut Barbieri
> said:
>
>> On Tue, Nov 14, 2017 at 9:35 AM, wrote:
>> > On Tue, Nov 14, 2017 at 09:22:01AM -0200, Gustavo Sverzut Barbieri wrote:
>> >>
On Tue, Nov 14, 2017 at 9:35 AM, wrote:
> On Tue, Nov 14, 2017 at 09:22:01AM -0200, Gustavo Sverzut Barbieri wrote:
>> while I'm okay with .eo.x, I'm not sure you should include it in
>> "sources", rather do in "dependencies".
>
> Well is it a d
h faster.
this is what I expect, not parsing every file again, building the same
in memory db again, just to generate different output.
actually I'd expect one day eolian get some caching in mmap-able
format, making each ".eo" processed in the cache, would speed up a lot
the ef
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> ___
> enlightenment-devel mailing list
> enlightenment-devel
+
> + eina_value_setup(&v, eina_value_type_get(val));
> + eina_value_copy(val, &v);
should we detect copy failed and in that case flush v and return an empty value?
copy is deep-copy, it may need to walk thru arrays, lists and
hashes... and some values may not provide copy, then
urn v;
> +}
> +
> +/**
> + * @brief Create a new #EinaInitializeining the passed parameter
typo or we got a new EinaInitalizeining? :-)
other than that would note that eina_value holds the reference to the
object, thus it will be kept alive until flus
those in calendar... then on
other widgets that may need time and date format, you'd just pass the
string. Say you create a "date input field", it would need to format
similarly to calendar.
--
Gustavo Sve
A_VALUE_TYPE_BLOB: Eina_Value_Blob*
> - * @li EINA_VALUE_TYPE_BLOB: Eina_Value_Blob*
> + * @li EINA_VALUE_TYPE_STRUCT: Eina_Value_Struct
looking the others, here should be "Struct*", since we're talking
about "pset()" (pointer set).
a_args). For pointer set, it's pset(). get() and pget() are
basically the same.
think about printf (set) x scanf (get).
then review all other documentation you wrote, things that insert in
array/list/hash, etc... are like set().
--
Gustavo Sverzut Barbieri
--
${eoincludedir}/eina-@VMAJ@
> +
> +Name: ecore-con
>
too much copy & paste? better to name it: efl-net
> +Description: E core library, Con module
>
EFL networking module.
other than that, should this automatically define the beta and the likes so
apps
On Fri, Oct 27, 2017 at 12:42 AM, Jean-Philippe André
wrote:
> 2017-10-27 11:12 GMT+09:00 Amitesh Singh :
>
> > Hello,
> >
> >
> > On Thu, Oct 26, 2017 at 9:30 PM, Gustavo Sverzut Barbieri <
> > barbi...@gmail.com> wrote:
> >
> > > On
Think of bindings (ie: python/javascript/c#), they may want to call
the implementation of efl.ui.slider how to? you need to provide a
method to allow that.
--
Gustavo Sverzut Barbieri
--
Mobile: +55 (16) 99354-9890
--
On Fri, Oct 20, 2017 at 4:18 AM, Jean-Philippe André wrote:
> 2017-10-20 8:15 GMT+09:00 Carsten Haitzler :
>
>> On Thu, 19 Oct 2017 14:28:27 -0200 Gustavo Sverzut Barbieri
>> said:
>>
>> > > + get {
>> > > +keys {
>> &g
On Thu, Oct 19, 2017 at 9:15 PM, Carsten Haitzler wrote:
> On Thu, 19 Oct 2017 14:28:27 -0200 Gustavo Sverzut Barbieri
> said:
>
>> > + get {
>> > +keys {
>> > + name: string; [[Configuration option name.]]
>>
>>
> + get {
> +keys {
> + name: string; [[Configuration option name.]]
shall we document and handle this as a path, so nested Eets can be
used, such as in E (wm).
--
Gustavo Sverzut Barbieri
--
Mobile: +55 (16) 9
Func_Cb @nullable; [[The format function
> callback]]
> }
>}
> - @property unit @protected {
> + @property format_string @protected {
> [[Control the format string for a given units label
here w
t;units", meaning that's
only to format units of a value. You may use it to format some date,
etc.
my suggestion is to change it to "format_template" or
"format_string"... and pass that to format_cb/func as above,
> +
> + buf = eina_strbuf_new();
> + eina_strbuf_append_strftime(buf, "%I:%M%p", info);
> + str = eina_strbuf_string_get(buf);
> + fail_if(str == NULL || strcmp(str, cbuf) != 0);
> + eina_strbuf_reset(buf);
> +
> + buf = eina_strbuf_new();
> + eina_strbuf_append(buf,
r", owned by caller
static inline Eina_Future *
efl_io_manager_ls_easy(Eo *manager, const char *path, Efl_Event_Cb
func, const void *func_data, Eina_Free_Cb func_free) {
Efl_Io_Manager_Ls_Ctx *ctx = malloc(sizeof(*ctx));
ctx->func = func;
ctx->func_data = f
exposing
the callback (which as I said above is confusing), just return an
EINA_VALUE_TYPE_ARRAY of EINA_VALUE_TYPE_STRING... as
eina_array_count() is O(1), there is no need to expose the uint64
(count).
With your new signature it just throw away the usefulness of Future,
@@ ecore_thread_local_data_del(Ecore_Thread *thread,
> const char *key)
> {
> Ecore_Pthread_Worker *worker = (Ecore_Pthread_Worker *)thread;
> + Eina_Bool r;
>
> if ((!thread) || (!key))
> return EINA_FALSE;
>
> - if (!PHE(worker-
= calloc(), just put it on stack.
> - end:
> - efl_del(p);
> + if (!eina_value_setup(&r, EINA_VALUE_TYPE_STRUCT))
> + goto on_error;
> + if (!eina_value_pset(&r, &value))
> + goto on_error;
here... this will malloc() an internal r.ptr of Eina_Value_Struct.
___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
--
Gustavo Sverzut Barbieri
--
Mobile: +55 (16) 99354-9890
---
@@ _efl_io_closer_fd_efl_io_closer_close_on_exec_get(Eo
> *o, Efl_Io_Closer_Fd_Data *
> EOLIAN static void
> _efl_io_closer_fd_efl_io_closer_close_on_destructor_set(Eo *o
> EINA_UNUSED, Efl_Io_Closer_Fd_Data *pd, Eina_Bool close_on_destructor)
> {
>
ailed: r is false"});
> //The last future is NULL, which may cause the cancel.
> f = eina_future_all_array(futures);
> - ck_assert_ptr_null(f);
> + ck_assert_ptr_eq(f, NULL);
> ecore_shutdown();
> ck_assert_int_eq(cb_called, len);
> }
> @@ -1308,7 +13
s = eina_position2d_move(pos, x - fd->x, y->fd->y);
efl_gfx_position_set(o, pos);
note: I just skimmed over the patch, didn't look every single line.
--
Gustavo Sverzut Barbieri
--
Mobile: +55 (16) 99354-9890
-
agreed and I'll fix, but need some weeks so I can get to it.
On Fri, Sep 15, 2017 at 11:32 PM, Carsten Haitzler wrote:
> On Fri, 15 Sep 2017 11:24:54 -0300 Gustavo Sverzut Barbieri
> said:
>
>> because I found the number of intefaces to be already too big to start
>> t
code, therefore I am" --
> Carsten Haitzler - ras...@rasterman.com
>
>
> --
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org!
was afraid of user of Eina_Value expecting to be able to mess with
> the memory directly (be accessing it or just copying the pointer and
> destroying the Eina_Value) and get a crash. If you think it won't be a
> problem, we could go with some optimisation an
EINA_TRUE;
> + }
> /* user defined */
> tpp = (Eolian_Typedecl *)eolian_type_typedecl_get(tp);
> if (!tpp)
> @@ -189,7 +223,7 @@ _validate_type(Eolian_Type *tp)
> return _type_error(tp, buf
; - efl_event_callback_array_add(p, promise_handling(), h);
> - return efl_promise_future_get(p);
> + return efl_future_Eina_FutureXXX_then(obj, future);
keep TODO annotations, once we add this "binding&q
ina_file_map_free((Eina_File*)f, (void*)m);
do you dup the memory because of modifications? otherwise we could
provide "ops" that would handle Eina_File, which we could
eina_file_dup().
--
Gustavo Sverzut Barbieri
--
Mobile: +55 (16) 99354-9890
---
unsigned int *p = ptr;
*p = *tmem;
return EINA_TRUE;
}
so your should read:
const Eina_Rectangle *tmem = mem;
Eina_Rectangle *p = ptr;
*p = *tmem;
(or in not-so-clear memcpy: memcpy(p, tmem, sizeof(Eina_Rectangle));
it would be nice to
lues". Would
emphasize the value, not pointer to value.
Usually we add the explicit type in eina_value_get(),
eina_value_pget(), eina_value_vget(), eina_value_set(),
eina_value_pset() and eina_value_vset()... so users don't do mistakes.
(this would be the case for Eina_File, I forgot to comm
uot;.
> /**
> + * @var EINA_VALUE_TYPE_FILE
> + * manages optional type.
too much copy&paste... it should be "manages Eina_File*".
--
Gustavo Sverzut Barbieri
--
Mobile: +55 (16) 99354-9890
-
1 - 100 of 4249 matches
Mail list logo