raster [Wed, 22 Feb 2012 09:42:27 +0000 (09:42 +0000)]
since n->filename became non-stringshared only after 1.1 - no
changelog needed, but fix eina waring! (thanks shinwoo!!!)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68256
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Wed, 22 Feb 2012 08:34:38 +0000 (08:34 +0000)]
Eina: fix win32 RWlocks
* initialize all the mutex members in eina_rwlock_new()
* fix assigments in eina_rwlock_take_read() and eina_rwlock_take_write()
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68248
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Mon, 20 Feb 2012 23:34:15 +0000 (23:34 +0000)]
Eina: gnu_printf format attribute was introduced in gcc 4.4
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68174
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Fri, 17 Feb 2012 20:53:36 +0000 (20:53 +0000)]
Eina: remove ugly FMT_* compatibility strings as Evil has now POSIX printf family functions
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68087
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Fri, 17 Feb 2012 20:52:15 +0000 (20:52 +0000)]
Use gnu_printf attribute to detect wrong usage of printf family functions
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68086
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Fri, 17 Feb 2012 20:51:05 +0000 (20:51 +0000)]
move standard header file before private ones
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68085
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
gastal [Fri, 17 Feb 2012 18:52:58 +0000 (18:52 +0000)]
Eina value example with user defined type.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68082
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
gastal [Fri, 17 Feb 2012 13:24:05 +0000 (13:24 +0000)]
Documented example of eina_value struct usage.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68072
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
gastal [Fri, 17 Feb 2012 13:24:02 +0000 (13:24 +0000)]
Documented example for eina_value.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68071
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Fri, 17 Feb 2012 11:16:01 +0000 (11:16 +0000)]
eina: fix forgotten initialization of count during eina_list_split_list.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68067
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
leif [Fri, 17 Feb 2012 10:52:20 +0000 (10:52 +0000)]
Change impl. to follow param name of header.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68065
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
leif [Fri, 17 Feb 2012 10:48:49 +0000 (10:48 +0000)]
rename 'size' param of eina_list_sort to 'limit'
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68064
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Thu, 16 Feb 2012 19:48:13 +0000 (19:48 +0000)]
eina_model: new events for load/unload.
Added the events: loaded and unloaded to notify eina_model_load() and
eina_model_unload() were called.
To be more specific, the interfaces used by EINA_MODEL_TYPE_MIXIN
(Eina_Model_Interface_Properties and Eina_Model_Interface_Children)
also do:
* properties,loaded
* properties,unloaded
* children,loaded
* children,unloaded
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68035
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Thu, 16 Feb 2012 19:33:50 +0000 (19:33 +0000)]
3/3 eina_model: fix inheritance test.
HUMAN_POOPER_IFACE must have ANIMAL_POOPER_IFACE as parent interface,
otherwise the order will be incorrect.
The test were also improved in other ways:
* use ck_assert_int_eq() instead of fail_if()... it prints the incorrect value
* check refcount
* unref models
* shutdown eina
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68034
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Thu, 16 Feb 2012 19:31:56 +0000 (19:31 +0000)]
2/3 eina_model: properly eliminate duplicates.
We must check for duplicates otherwise we'll have remaining entries
after topological sort.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68033
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Thu, 16 Feb 2012 19:30:23 +0000 (19:30 +0000)]
1/3 eina_model: lookup interfaces in the correct order.
We should lookup then in forward order, as they are sorted from
most-specific first, with parents at the end.
This breaks test, will fix in the last commit (3/3).
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68032
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
tasn [Thu, 16 Feb 2012 12:37:27 +0000 (12:37 +0000)]
Elm model: Updated examples.
Patch by Yakov.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68027
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
gastal [Wed, 15 Feb 2012 18:44:50 +0000 (18:44 +0000)]
Documentation for all eina model functions.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67992
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Wed, 15 Feb 2012 14:17:16 +0000 (14:17 +0000)]
make tasn happier
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67987
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Wed, 15 Feb 2012 14:08:01 +0000 (14:08 +0000)]
review animal as example for other example files.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67986
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Wed, 15 Feb 2012 13:50:43 +0000 (13:50 +0000)]
build example.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67985
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
tasn [Wed, 15 Feb 2012 08:18:47 +0000 (08:18 +0000)]
Eina model: Added an advanced inheritance + interface example.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67965
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
tasn [Tue, 14 Feb 2012 09:48:00 +0000 (09:48 +0000)]
Eina model: Fix issues with interface inheritance.
The ptr comparison had issues.
Order of interface overrides was wrong.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67915
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Mon, 13 Feb 2012 16:18:47 +0000 (16:18 +0000)]
eina_value_stringshare: safer copy, to cope copying user-generated structs.
array, list, struct and others set() now copies the values. These
values can be created by user, in this case string is just a stack
object and not a real eina_stringshare.
To cope with it, add the string instead of referencing it. Bit slower,
but nicer behavior.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67886
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Sat, 11 Feb 2012 18:04:32 +0000 (18:04 +0000)]
improve documentation of eina model and value.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67851
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Sat, 11 Feb 2012 00:48:42 +0000 (00:48 +0000)]
model: add helper for common pattern
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67845
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Sat, 11 Feb 2012 00:42:00 +0000 (00:42 +0000)]
one day I'll be less stupid...
... or one day we'll move to git so I can rewrite stupid commits :-D
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67844
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Sat, 11 Feb 2012 00:34:25 +0000 (00:34 +0000)]
eina_value: break usage, but makes it more uniform and correct.
I did a bad decision to steal memory for Array, List, Hash and Struct
types, it was nice to not have to copy it internally, but breaks when
one needs to set a new value that was set elsewhere. What did not
happen with string, integers and other basic types.
This was exposed by Raphael Kubo using eina_model_property_set() with
complex types (Array, List and Hash) and it was not possible to
correctly set such properties.
Now it's all set, but the behavior changed and the memory is not
stolen and released anymore. Test eina_test_value.c was changed to
reflect it.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67843
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Fri, 10 Feb 2012 22:03:48 +0000 (22:03 +0000)]
value: be safer on reset of existing values.
if user get and then set the same value, we should not crash and this
may happen with previous code as the old
string/array/value/list... were released, then you ended with the
released memory still being pointed.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67841
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Fri, 10 Feb 2012 21:43:55 +0000 (21:43 +0000)]
value: just setup on new memory!
We should not flush and then setup the memory, instead we leave
vset/pset functions do their own stuff to clean previous data, if any.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67840
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Fri, 10 Feb 2012 21:34:28 +0000 (21:34 +0000)]
value: allow multiple flush.
multiple flush may happen when handling errors. May be used in some cases.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67839
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Fri, 10 Feb 2012 21:18:59 +0000 (21:18 +0000)]
eina_value: fix convert to string on empty/null cases.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67838
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Fri, 10 Feb 2012 20:56:47 +0000 (20:56 +0000)]
ignore generated files.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67837
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Fri, 10 Feb 2012 20:39:27 +0000 (20:39 +0000)]
fix test leaks
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67836
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Fri, 10 Feb 2012 20:39:07 +0000 (20:39 +0000)]
eina_value_hash: must free hash value after it's flushed.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67835
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Fri, 10 Feb 2012 20:38:28 +0000 (20:38 +0000)]
fix memleak in test suite.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67834
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Fri, 10 Feb 2012 17:18:10 +0000 (17:18 +0000)]
Another example for eina_model.
Patch by: "Jonas M. Gastal" <jgastal@profusion.mobi>
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67832
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Fri, 10 Feb 2012 11:03:18 +0000 (11:03 +0000)]
thanks vincent.
I just did that mistake to see if you were paying attention... /me liar! :-)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67822
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Fri, 10 Feb 2012 10:48:39 +0000 (10:48 +0000)]
eina_model: add xref/xunref, xrefs_get and models_usage_dump!
Let's try to help debug by allowing extended reference management that
takes in account an identifier. This identifier is accounted on xref
and xunref and must match.
xrefs_get will return the list of such references, for debugging purposes.
eina_models_list_get() was added to return all live models, just
tracked when EINA_MODEL_DEBUG is enabled.
eina_models_usage_dump() was added and use the same infrastructure as
eina_models_list_get() and eina_model_xrefs_get() to aid debugging :-)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67821
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Fri, 10 Feb 2012 10:34:19 +0000 (10:34 +0000)]
add missing shutdown
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67818
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Thu, 9 Feb 2012 21:42:50 +0000 (21:42 +0000)]
remove @EINA_CPPFLAGS@ from remaining Makefile.am
Thanks to Tommy[D] for spotting the problem!
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67799
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Thu, 9 Feb 2012 20:26:00 +0000 (20:26 +0000)]
add Jonas to authors.
He worked previously with documentation, now is helping me with
Eina_Model and will keep adding some examples and fixes here and
there.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67798
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Thu, 9 Feb 2012 19:13:54 +0000 (19:13 +0000)]
More documentation for eina_model.
Patch by: "Jonas M. Gastal" <jgastal@profusion.mobi>
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67797
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Thu, 9 Feb 2012 16:29:50 +0000 (16:29 +0000)]
eina_model: rename all "search" to "criteria_match"
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67796
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Thu, 9 Feb 2012 16:20:16 +0000 (16:20 +0000)]
eina_model: helper function to setup subclass during runtime.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67795
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
tasn [Thu, 9 Feb 2012 12:29:56 +0000 (12:29 +0000)]
Eina examples: Formatted model example a bit.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67791
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
tasn [Thu, 9 Feb 2012 10:32:14 +0000 (10:32 +0000)]
Eina model: Made i_method_resolve a macro (for interface as well)
Same as the previous commit about "Type" this time about Interface.
This will also hopefully remove the likelihood for hacks.
Previous functions are still available as method_offset_resolve.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67786
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
lucas [Thu, 9 Feb 2012 00:06:14 +0000 (00:06 +0000)]
eina_sched: fix rt priority drop
Thanks to cedric for noticing this bug. Priority in userspace are in the
opposite order as in kernel space.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67776
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
tasn [Wed, 8 Feb 2012 16:39:19 +0000 (16:39 +0000)]
Eina model: Added an eina model example for inheritance.
Patch by Yakov Goldberg.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67767
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
tasn [Wed, 8 Feb 2012 15:37:07 +0000 (15:37 +0000)]
Eina model: Made _method_resolve a macro to remove the need for offsetof.
This will also hopefully remove the likelihood for hacks.
Previous functions are still available as method_offset_resolve.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67765
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Wed, 8 Feb 2012 15:13:25 +0000 (15:13 +0000)]
eina_model: correctly retrieve the memory from value.
val->value.ptr is just valid on 64bits platforms, as on 32bits both
pointers of the Eina_Value_Struct fits in the 8bytes of val->value.buf.
Always use the function to correctly retrieve it.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67764
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
tasn [Tue, 7 Feb 2012 13:24:27 +0000 (13:24 +0000)]
Eina model: Fix another issue with the method resolve functios.
Make it possible to resolve foo (the last item).
struct _My_Object_Type
{
Eina_Model_Type parent_class;
...
void (*foo)(Eina_Model *, int);
};
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67733
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
tasn [Tue, 7 Feb 2012 13:17:13 +0000 (13:17 +0000)]
Eina Model: Fix wrong error checking in the method resolve functions.
This enables resolving method foo...
struct _My_Object_Type
{
Eina_Model_Type parent;
void (*foo)(Eina_Model *, int);
...
}
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67732
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
jihoon [Sun, 5 Feb 2012 23:37:45 +0000 (23:37 +0000)]
fix @dates in each header file
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67705
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Sun, 5 Feb 2012 09:41:25 +0000 (09:41 +0000)]
Eina: use new Evil API to detect absolute path name
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67702
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Sun, 5 Feb 2012 09:34:17 +0000 (09:34 +0000)]
Eina: append and prepend __ to gcc attributes
Avoid conflicts with macros that have been previously defined
with the same name than the attribute
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67701
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Thu, 2 Feb 2012 12:32:13 +0000 (12:32 +0000)]
Change eina_mode_child_search to more descriptive
eina_model_child_criteria_match.
Patch by: "Jonas M. Gastal" <jgastal@profusion.mobi>
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67688
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Thu, 2 Feb 2012 12:31:46 +0000 (12:31 +0000)]
Better documentation for eina_model.
Patch by: "Jonas M. Gastal" <jgastal@profusion.mobi>
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67687
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 31 Jan 2012 21:05:20 +0000 (21:05 +0000)]
eina_value: fix struct type.
1. consider case where the struct was not set for flush and others;
2. flush previous struct on pset;
3. setup the new struct members memory on pset;
4. always use ops->alloc and ops->free if they are provided;
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67662
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
discomfitor [Tue, 31 Jan 2012 17:31:48 +0000 (17:31 +0000)]
unbreak eina_value
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67643
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
tasn [Tue, 31 Jan 2012 17:27:57 +0000 (17:27 +0000)]
Eina stringshare: fixed up the previous commit a bit.
Fixed wrong usage of Eina_Stringshare - Thanks k-s.
Omited the star from the typedef - Thanks Sacihel.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67642
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
tasn [Tue, 31 Jan 2012 17:12:23 +0000 (17:12 +0000)]
Eina stringshare: Added Eina_Stringshare a stringshare visual hint.
It's interchangeable with const char *, it's juts there as a visual hint
for functions expecting stringshared values. Docs are not enough...
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67641
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
discomfitor [Tue, 31 Jan 2012 16:55:10 +0000 (16:55 +0000)]
add new eina value dummy type TIMESTAMP which is identical to ULONG
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67639
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 31 Jan 2012 16:47:36 +0000 (16:47 +0000)]
add missing @since 1.2
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67638
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 31 Jan 2012 16:45:59 +0000 (16:45 +0000)]
eina_value: add EINA_VALUE_TYPE_MODEL
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67637
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 31 Jan 2012 15:26:48 +0000 (15:26 +0000)]
eina_model: change the way extensions are done.
Thanks to Tasn review it was noticed that subclasses using "const void *value"
with sub-structure would have to resolve their methods manually, quite bad.
Then the extension will happen with structures inside structures, as
previously used in Evas_Smart_Class. To allow the system to resolve
the methods and keep it, it is now specificed the type_size.
A new function is added to help extensions:
eina_model_type_method_resolve(), together with few helper macros.
To allow Eina_Model_Type to be augmented with more methods without
breaking the ABI, 4 slots are left there. We expect we got it right
from beginning and these will never be used, but we can never be sure
;-)
Last but not least, similar changes were done to Eina_Model_Interface
for consistency matters.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67635
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
tasn [Sun, 29 Jan 2012 15:38:04 +0000 (15:38 +0000)]
Eina test model: Use EINA_VALUE_STRUCT_MEMBER and the new EINA_C_ARRAY_LENGTH.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67590
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
tasn [Sun, 29 Jan 2012 15:38:01 +0000 (15:38 +0000)]
Eina: Added EINA_C_ARRAY_LENGTH.
This macro returns the length of a standard C array.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67589
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
tasn [Sun, 29 Jan 2012 12:57:36 +0000 (12:57 +0000)]
Eina test model: Get offsets and sizes properly.
Make the tests work on multiple platforms and also let people who read the
code see how to do it properly.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67584
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Fri, 27 Jan 2012 07:52:30 +0000 (07:52 +0000)]
Eina: fix previous commit
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67564
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
tasn [Thu, 26 Jan 2012 16:42:00 +0000 (16:42 +0000)]
Eina model: fix a memory leak in the model's "to_string" function.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67551
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Thu, 26 Jan 2012 07:21:27 +0000 (07:21 +0000)]
Eina: fix compilation errors in Eina_RWLock code when building code on Windows > XP
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67545
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Wed, 25 Jan 2012 17:06:29 +0000 (17:06 +0000)]
bugfix: reset iterator to head before the second lookup.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67539
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Wed, 25 Jan 2012 16:58:57 +0000 (16:58 +0000)]
eina_value_struct_member_value: helper to be used by esql and possibly others.
It is common to already known the member, then no need to query
it. This provides optimized retrieval for people that can manage it.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67538
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Wed, 25 Jan 2012 13:48:32 +0000 (13:48 +0000)]
Small fixes to eina_model documentation.
Patch by: "Jonas M. Gastal" <jgastal@profusion.mobi>
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67535
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
tasn [Wed, 25 Jan 2012 12:05:20 +0000 (12:05 +0000)]
Eina model: Fix the example in the docs to compile.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67534
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 24 Jan 2012 22:56:17 +0000 (22:56 +0000)]
value got the helper, will be useful in other cases as well.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67518
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 24 Jan 2012 22:17:57 +0000 (22:17 +0000)]
more efficient model properties based on struct.
this is a killer, should be very efficient in memory and speed to
set/get items: instead of a hash of properties, keep them in a C
struct!
The constraint is that properties have fixed types defined at compile
time and cannot be deleted, but this is expected in many cases (ie:
esql rows).
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67517
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 24 Jan 2012 22:15:06 +0000 (22:15 +0000)]
reset log level after it's done testing.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67516
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Tue, 24 Jan 2012 22:05:46 +0000 (22:05 +0000)]
Eina: fix requirements and a comment message
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67515
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Tue, 24 Jan 2012 07:21:33 +0000 (07:21 +0000)]
Eina: update alloca() declaration from latest autoconf doc.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67483
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Tue, 24 Jan 2012 07:08:23 +0000 (07:08 +0000)]
Eina: Windows version is managed by Evil, now. I'm not sure I have to update ChangeLog.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67482
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
sachiel [Mon, 23 Jan 2012 16:51:02 +0000 (16:51 +0000)]
dereference pointer before using
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67479
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Mon, 23 Jan 2012 00:25:12 +0000 (00:25 +0000)]
beef eina_error tests.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67461
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Sun, 22 Jan 2012 22:00:07 +0000 (22:00 +0000)]
fix paths to be relative to project build root.
"make doc" was doing "cd doc" and paths were relative to it, misleading.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67459
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Sun, 22 Jan 2012 18:07:04 +0000 (18:07 +0000)]
help buildbot and user know where the html files are.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67454
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Sun, 22 Jan 2012 15:09:51 +0000 (15:09 +0000)]
buildbot: new attempt at coverage support.
I've changed a bit the rules, let's see if it works with buildbot
(out-of-tree builds).
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67449
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Sun, 22 Jan 2012 12:08:06 +0000 (12:08 +0000)]
Eina: remove warning when compiling with mingw-w64
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67447
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Sun, 22 Jan 2012 08:57:50 +0000 (08:57 +0000)]
Eina: DOS2UNIX eina_file_win32.c
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67445
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Sun, 22 Jan 2012 08:56:13 +0000 (08:56 +0000)]
Eina: remove unused variable
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67444
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Sun, 22 Jan 2012 08:55:02 +0000 (08:55 +0000)]
Eina "Fix" printf conversion format on Windows. printf family on Windows is just plain weirdness
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67443
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Sat, 21 Jan 2012 08:23:23 +0000 (08:23 +0000)]
Eina: formatting
eina_file_init() and eina_file_shutdown() are global symbols, not local ones
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67423
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Sat, 21 Jan 2012 08:21:32 +0000 (08:21 +0000)]
Eina: Windows fixes
add eina_file_path_sanitize() which was missing in the windows port
add locks
synchronize a bit with the linux version
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67422
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Sat, 21 Jan 2012 08:19:46 +0000 (08:19 +0000)]
alphabetical order
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67421
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Sat, 21 Jan 2012 08:02:54 +0000 (08:02 +0000)]
Eina: put m4 files in their own subdir
Warning: you must relaunch autogen.sh for these changes to
be taken into account
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67420
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Sat, 21 Jan 2012 07:44:05 +0000 (07:44 +0000)]
Eina: include stdlib.h instead of alloca.h (alloca() is not used while malloc() is)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67419
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Sat, 21 Jan 2012 07:21:23 +0000 (07:21 +0000)]
eina share log refactor.
Don't print messages from share common, that way we have no way to
know where it happens, moreover the binshare values may lack trailing
'\0'.
Also makes no sense to share the log domain. With separate domains we
can be more selective in what we log/debug.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67418
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Sat, 21 Jan 2012 06:26:56 +0000 (06:26 +0000)]
eina_test_model: better use of check macros.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67417
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Sat, 21 Jan 2012 06:26:32 +0000 (06:26 +0000)]
eina_model: fix uninitialized bit
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67416
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Sat, 21 Jan 2012 05:32:39 +0000 (05:32 +0000)]
matrixsparse: fix pointer after it's freed.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@67415
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33