Daniel Juyung Seo
76d8532b54
efl: Unified eina critical manro to CRI.
...
Being annoyed by different types of eina critical macros - CRI, CRIT,
CRITICAL -, I concluded to unify them to one. Discussed on IRC and
finally, CRI was chosen to meet the consistency with other macros -
ERR, WRN, INF, DBG - in terms of the number of characters.
If there is any missing bits, please let me know.
2013-12-26 12:27:13 +09:00
Tom Hacohen
05d2701474
Eo: Fixed eo_manual_free to always return a value.
...
I wonder how come this wasn't triggered in 64bit and only in 32.
2013-11-26 13:08:55 +00:00
Tom Hacohen
d6ac2464bb
Eo: Make eo_manual_free() return a success flag.
...
eo_manual_free() can fail in some cases, and it is useful for users of
this API to know about it in order to decide what to do.
2013-11-26 12:10:53 +00:00
Tom Hacohen
c5af1a7305
Eo: Add an error message when old parent is wrong.
...
This is an addition to raster's fix in
55d8156414
(eo - base class protection against NULL old_parent_pd)
2013-11-26 10:10:24 +00:00
Carsten Haitzler
55d8156414
eo - base class protection against NULL old_parent_pd
...
bug T569 still shows that we have cases where, during e shutdown, we
still get eo_data_scope_get() return NULL for a parent object.
whatever this is, segfaulting is much worse than protecting and
marching on. so protect
2013-11-26 17:03:50 +09:00
Tom Hacohen
cad3cf30a4
Eo: Check parent is valid in eo_parent_set.
...
This is an extension to raster's 0355a6a296
(eo - fix _parent_set in base clase when old_parent_pd is NULL).
I also added an error message in case this check fails.
2013-11-20 12:23:18 +00:00
Carsten Haitzler
0355a6a296
eo - fix _parent_set in base clase when old_parent_pd is NULL
...
this should fix T538
2013-11-20 20:25:33 +09:00
Tom Hacohen
a52751d065
Eo: Fixed potential infinite loop with child deletion.
...
It looks like it should get into a loop for every object that has
children.
2013-11-08 12:11:27 +00:00
Tom Hacohen
c7addf4083
Changed Eo class names to be consistent.
...
All the class names are now of the format: Lib_Type_Subtype_Extra.
2013-11-07 11:17:52 +00:00
Tom Hacohen
087f945690
Eo: remove ; after while (0) in Eo.h.
...
The whole point of having "do {} while (0);" is to force people to add a
; after the call to the macro. Therefore there should be no semicolon.
2013-11-06 14:38:29 +00:00
Yakov Goldberg
ed8301b8bf
eo: fix doxygen description, which is needed for parser
2013-10-14 18:12:28 +03:00
Jérémy Zurcher
59a73bdcad
eo: enable doc generation
2013-10-13 00:00:13 +02:00
Jérémy Zurcher
1648b67c5b
eo: add EO_CLASS_CLASS
...
it's an empty class without operations,
used as a return value for eo_class_get() when the caller is a class
2013-10-13 00:00:13 +02:00
Carsten Haitzler
69e27abdc3
eina - and e3fl in general - stop using eina_error_get/set - useless really
2013-10-11 16:50:40 +09:00
Cedric Bail
435caae51a
eo: use Eina_Spinlock instead of Eina_Lock.
...
This is an ABI/API break for Eo, you will need to rebuild everything that use Eo.
2013-10-11 11:08:17 +09:00
Tom Hacohen
baf0fc4268
Eo: Don't compare desc to NULL as it can never be NULL at that stage.
...
Fixes coverity CID1039420.
2013-09-30 14:32:47 +01:00
Tom Hacohen
104a57b58a
Eo callbacks: Fix a possible issue of corrupted callback list.
...
This happens when we delete more than one callback at the beginning
of the list (i.e 2 or more) in one go.
2013-09-30 14:16:46 +01:00
Tom Hacohen
f5d4a807c8
Eo: Don't write to pointer after free.
...
Fixes coverity: CID 1039898.
2013-09-30 14:15:37 +01:00
Tom Hacohen
42d29b55e5
Eo: don't va_start without a matching va_end.
...
Fixes coverity CID1099707.
2013-09-30 14:10:21 +01:00
Tom Hacohen
8ca320a1fc
Eo: don't va_start without a matching va_end.
...
Fixes coverity CID1099708.
2013-09-30 14:07:20 +01:00
Daniel Zaoui
334ac705f3
Eo: fix when detaching the composite of its parent ... that has to exist
2013-09-29 08:50:32 +03:00
Tom Hacohen
cb92a60a61
Eo: merge _eo_obj_dov_internal and _eo_class_dov_internal.
...
They are the same except for really minor differences.
2013-09-27 17:21:08 +01:00
Tom Hacohen
e6886e05b1
Eo: get rid of eo_class_do(_super) which we don't need anymore.
...
We now completely use eo_do(_super), so those are not needed.
2013-09-27 17:01:51 +01:00
Tom Hacohen
7ed7d7da8b
Eo: class_get on a class should not return itself.
...
This is there until we create a Class class of which all classes are
instances.
2013-09-27 16:50:34 +01:00
Tom Hacohen
832fc5b5ce
Manually revert "eo: replace Eo_Class with Eo"
...
This reverts commit ee1b0833ed
I did it manually because the code changed too much.
We actually want this type, it makes things more clear and easier to
understand.
2013-09-27 16:40:32 +01:00
Tom Hacohen
ba5af54f6d
Eo: Fixed the type _eo_id_get accepts.
2013-09-27 14:01:47 +01:00
Tom Hacohen
e3cb9195c2
Eo: Explicitly include Eina.h in eo_private.h.
...
It's uses eina stuff, we can't just assume eina is already included.
2013-09-27 14:01:47 +01:00
Tom Hacohen
01effff86f
Eo: Get rid of the _Eo type, it's not needed.
...
We have Eo_Base for that.
2013-09-27 14:01:47 +01:00
Tom Hacohen
c64637e500
Eo: Use __FILE__ and __LINE__ instead of random values.
2013-09-27 14:01:47 +01:00
Tom Hacohen
1059f802bf
Eo: Rename Eo_Header to Eo_Base.
2013-09-27 14:01:47 +01:00
Tom Hacohen
828928601e
Eo: Added an Eo_Class type just for compat. Should be removed.
2013-09-27 14:01:47 +01:00
Tom Hacohen
e17e66db8c
Eo: Get rid of handle. Use the shared header for detection.
2013-09-27 14:01:47 +01:00
Tom Hacohen
5e90d51013
Eo: Merge common part of class and object.
...
First step toward getting rid of "handle".
2013-09-27 14:01:47 +01:00
Tom Hacohen
8dbbc16731
Eo: Class_Id and Object_Id are now the same type.
2013-09-27 14:01:47 +01:00
Tom Hacohen
2a82ff95e4
Eo: unify the class func and normal func prototypes.
...
Conflicts:
src/lib/eo/eo.c
2013-09-27 14:01:47 +01:00
Tom Hacohen
298527191e
Eo: Fixed unused warnings when have EO_ID.
2013-09-27 14:01:47 +01:00
Jérémy Zurcher
9fa35820ca
eo: ojb_ref -> class_ref
2013-09-27 14:01:46 +01:00
Jérémy Zurcher
f4c1bff0f3
eo: eo_do_super_internal() supports objects and classes
...
eo_class_do_super() macro calls eo_do_super()
eo_class_do_super_internal() and _eo_class_op_internal() are removed
Conflicts:
src/lib/eo/eo.c
2013-09-27 14:01:46 +01:00
Jérémy Zurcher
c4b40aae0d
eo: eo_class_get() supports objects and classes
2013-09-27 14:01:46 +01:00
Jérémy Zurcher
8855024e16
eo: eo_class_name_get() supports objects and classes
2013-09-27 14:01:46 +01:00
Jérémy Zurcher
ef62885c93
eo: eo_vdo_internal() supports objects and classes
...
Conflicts:
src/lib/eo/Eo.h
src/lib/eo/eo.c
2013-09-27 14:01:46 +01:00
Jérémy Zurcher
12bfc76483
eo: eo_do_internal() supports objects and classes
...
eo_class_do() macro calls eo_do()
eo_class_do_internal() is removed
op_type argument is remove from eo_do, eo_vdo_internal
Conflicts:
src/lib/eo/eo.c
2013-09-27 14:01:46 +01:00
Jérémy Zurcher
c24775c58d
eo: add union _Eo to unify objects and classes internal pointers
2013-09-27 14:01:46 +01:00
Jérémy Zurcher
f43287a261
eo: add _eo_is_a_class(const Eo *obj_id)
2013-09-27 14:01:46 +01:00
Jérémy Zurcher
41bd91379e
eo: _Eo -> _Eo_Object
...
Conflicts:
src/lib/eo/eo.c
2013-09-27 14:01:46 +01:00
Jérémy Zurcher
ee1b0833ed
eo: replace Eo_Class with Eo
2013-09-27 14:01:46 +01:00
Jérémy Zurcher
a246e581a6
eo: if HAVE_EO_ID use MBS to tag Eo_Id
...
a bit is taken from generation bits to tag objects references so that we
know if a Eo* is a class or an object
2013-09-27 14:01:46 +01:00
Jérémy Zurcher
5913f78b4f
eo: if !HAVE_EO_ID front-pad _Eo_Class and _Eo_Object with _Eo_Handle
...
this is the first step on the road to remove class specific EAPI from Eo.h
using this handle we will know if a Eo* is a class or an object pointer
Conflicts:
src/lib/eo/eo.c
2013-09-27 14:01:46 +01:00
Tom Hacohen
1845ffe5b0
Eo: remove the classe's EINA_MAGIC when using eo_id.
2013-09-26 16:26:55 +01:00
Cedric Bail
936a8072f2
eo: make eo_parent_get/set part of eo_base_class.
2013-09-25 13:34:18 +09:00