Commit Graph

357 Commits

Author SHA1 Message Date
Mike Blumenkrantz bf66f6f712 go go gadget recrustify!
SVN revision: 51063
2010-08-13 01:46:14 +00:00
Cedric BAIL a6645cb746 * eina: fix eina array threadsafe version.
Also add iterator and accessor ability to walk threadsafely.
	Rename EINA_EACH to EINA_EACH_CB to match other callback cast.


SVN revision: 51000
2010-08-11 14:32:30 +00:00
Mike Blumenkrantz a7398f4e08 refcount locks to avoid deadlocks; array threadsafety should be good to go now
SVN revision: 50962
2010-08-10 12:14:59 +00:00
Mike Blumenkrantz c09c5ed690 and these
SVN revision: 50961
2010-08-10 12:05:51 +00:00
Mike Blumenkrantz a589a1bcbe and this too
SVN revision: 50960
2010-08-10 12:00:36 +00:00
Mike Blumenkrantz cbf7f7b58a array threadsafing wip, get rid of dumb undefineds from earlier
SVN revision: 50959
2010-08-10 11:57:20 +00:00
Mike Blumenkrantz 5b4ec5bd35 change EINA_ARRAY_THREADSAFE_ITER_RETURN to EINA_ARRAY_THREADSAFE_ITER_ESCAPE to match forthcoming threadsafe list api
SVN revision: 50956
2010-08-10 07:48:00 +00:00
Mike Blumenkrantz 56a0bd9396 implement threadsafety for arrays, alter all eina internal array usage to (hopefully) be threadsafe
call eina_threads_init() to enable this if you have pthread rwlock support (posix 2001)
note some function prototypes have lost const on array params to allow locking
WARNING: you should NOT call eina_threads_shutdown unless you are positive that you will not use any arrays which were created while threadsafe mode were enabled, and vice versa.  Failing to adhere to this warning WILL result in either deadlocks or memory leaks.


SVN revision: 50951
2010-08-10 03:26:15 +00:00
Mike Blumenkrantz 224f7d3b55 formatting
SVN revision: 50913
2010-08-08 20:49:26 +00:00
Mike Blumenkrantz 84faaf51fd add rwlock define to eina_config.h
SVN revision: 50911
2010-08-08 19:35:43 +00:00
Lucas De Marchi 0a4617ae38 FORMATTING
* Remove vim modelines:
 find . -name '*.[chx]' -exec sed -i '/\/\*$/ {N;N;/ \* vim:ts/d}' \{\} \;
 find . -name '*.[chx]' -exec sed -i '/\/[\*\/] *vim:/d' \{\} \;

* Remove leading blank lines:
 find . -name '*.[cxh]' -exec sed -i '/./,$!d'

If you use vim, use this in your .vimrc:
set ts=8 sw=3 sts=8 expandtab cino=>5n-3f0^-2{2(0W1st0



SVN revision: 50816
2010-08-04 16:57:32 +00:00
Cedric BAIL c9d5d8a62e * eina: add a way to move a key to another without triggering the Free_Cb.
SVN revision: 50683
2010-07-30 09:06:58 +00:00
Brett Nash 4414556323 Unicde strnlen, and a slight fix to the header so at least part can be read by
humans.

Also strlen/strnlen are pure.


SVN revision: 50676
2010-07-30 03:39:12 +00:00
Iván Briano 55baf0a4f1 DO export this thingies
SVN revision: 50645
2010-07-29 14:08:02 +00:00
Mike Blumenkrantz 5028d6a282 lots of doxy fixes and stop casting to char*
SVN revision: 50582
2010-07-28 03:34:25 +00:00
Carsten Haitzler 15c71af0a5 fix formatting also
SVN revision: 50577
2010-07-28 03:03:25 +00:00
Carsten Haitzler bed21c315d errrr... hmmm why did this change?
SVN revision: 50574
2010-07-28 02:48:11 +00:00
Carsten Haitzler ddc6ba2c2a uncrustify eina.
SVN revision: 50573
2010-07-28 02:37:05 +00:00
Tom Hacohen d928a9ded8 Eina: implement the macro eina_binshare_add.
SVN revision: 50535
2010-07-27 09:41:34 +00:00
Tom Hacohen 279da003e0 Eina: Added Eina_UStrbuf.
Same as Eina_Strbuf but for Eina_Unicode strings.

SVN revision: 50534
2010-07-27 09:05:41 +00:00
Tom Hacohen 3675a5f02b Eina: Add Eina_UStringshare and Eina_Binshare.
Also modified Eina_Stringshare to share most of the code with the two above.
Added Magics for Eina_UStrbuf as well as for UStringshare/Binshare.

SVN revision: 50533
2010-07-27 08:55:23 +00:00
Tom Hacohen 270f765c91 Eina: Added Eina_Unicode.
SVN revision: 50532
2010-07-27 08:22:20 +00:00
Cedric BAIL 07ad9d5139 * eina: add a mempool that just do one big malloc.
SVN revision: 50510
2010-07-26 15:52:43 +00:00
Cedric BAIL 21f5dec9d3 * eina: SPANK SPANK SPANK !
SVN revision: 50509
2010-07-26 09:31:40 +00:00
Mike Blumenkrantz dd2dc39bff this was supposed to go with the last commit...
SVN revision: 50502
2010-07-26 05:09:20 +00:00
Mike Blumenkrantz 7ff1096672 +eina_stringshare_printf
+eina_stringshare_nprintf
the long awaited printf functions for stringshare!


SVN revision: 50490
2010-07-25 19:18:26 +00:00
Mike Blumenkrantz 37de5b807f +eina_error_msg_modify to change the error string of a registered error; preserves allocation state of message creation (errors created with static_register() will remain statically allocated)
SVN revision: 50484
2010-07-25 06:25:06 +00:00
Mike Blumenkrantz 846e224fd2 +eina_str_toupper for completion
SVN revision: 50483
2010-07-25 02:03:10 +00:00
Mike Blumenkrantz 2f183fa194 eina_hash_modify_or_add -> eina_hash_set
SVN revision: 50448
2010-07-23 13:04:21 +00:00
Mike Blumenkrantz 489cae4eee +eina_hash_modify_or_add to always add a value to the hash at the specified key
SVN revision: 50402
2010-07-21 03:15:39 +00:00
Mike Blumenkrantz f18e1899e5 +eina_str_tolower for lowercasing an entire string in one line
SVN revision: 50361
2010-07-19 01:56:42 +00:00
Mike Blumenkrantz c146935917 +eina_stringshare_replace_length to replace a stringshared string with a given length of another string
SVN revision: 50320
2010-07-18 07:39:21 +00:00
Mike Blumenkrantz 8e56225323 attribute whoops
SVN revision: 50318
2010-07-18 06:45:22 +00:00
Mike Blumenkrantz 02ef2d58e5 small patch from andmils in #e; fixes compile on freebsd
SVN revision: 50317
2010-07-18 06:38:23 +00:00
Mike Blumenkrantz 9276378041 +eina_strbuf_string_free to free string in strbuf without freeing strbuf
SVN revision: 50316
2010-07-18 06:21:50 +00:00
Mike Blumenkrantz d3982d4b5c +eina_hash_free_buckets to free buckets without freeing a hash
SVN revision: 50315
2010-07-18 04:24:24 +00:00
Vincent Torri c7bb6d41f5 include sys/syslimits.h on mac os x for PATH_MAX and NAME_MAX
i really dislike having PATH_MAX in a header file...



SVN revision: 50231
2010-07-13 19:17:35 +00:00
Vincent Torri 971f0800ca useless headers now
SVN revision: 50221
2010-07-13 13:57:21 +00:00
Vincent Torri c97a897584 use Win32 native mutex on Windows. To use it, pass the following option
to configure:

--enable-win32-threads

By default, pthreads are used


SVN revision: 50220
2010-07-13 13:51:00 +00:00
Vincent Torri c012d2e7f6 fix compilation on Windows
SVN revision: 50179
2010-07-11 11:52:43 +00:00
Lucas De Marchi 442fe3afae Add missing macros
Add missing EINA_SAFETY_ON_NULL_GOTO and define all the *GOTOs macros when
safety checks are disabled.



SVN revision: 50138
2010-07-09 03:27:04 +00:00
Lucas De Marchi 93f03880bd Do not purify what's impure
Two tests were failing, but no more.



SVN revision: 50067
2010-07-06 15:50:15 +00:00
Gustavo Sverzut Barbieri 5b03bc86ec add some gcc modifiers: non-null args, warn unused results and malloc.
SVN revision: 50066
2010-07-06 15:48:24 +00:00
Gustavo Sverzut Barbieri ed15713785 add eina_file_direct_ls()
Similar to eina_file_ls(), but useful when one wants to apply some
filters to the names before using them as it provides sizes of the
whole path and basename, index of the basename inside the path, dirent
structure for reference (skip directories, etc) and last but not
least, it is faster as it does not stringshare or even builds the full
path at each iteration, instead it keeps the invariant prefix
untouched and just copy the filename.

All in all this is a faster version of eina_file_ls(), use it as
possible as it will avoid overheads.



SVN revision: 50065
2010-07-06 15:45:12 +00:00
Cedric BAIL d4059c7107 * eina: rename ecore_file_ls_iterator to eina_file_ls.
SVN revision: 50002
2010-07-02 17:23:05 +00:00
Cedric BAIL cf128ea0e4 * eina: improve quadtree to support more stuff needed by evas.
SVN revision: 49784
2010-06-21 13:17:09 +00:00
Carsten Haitzler 02503dd152 eina gets version thing ala eet.
SVN revision: 49267
2010-05-29 03:05:04 +00:00
Vincent Torri 247674b26c do not declare inlined functions in the source file,
fix a bit the doc of inlined functions

SVN revision: 49253
2010-05-28 19:03:26 +00:00
Cedric BAIL 6caac50006 * eina: improve QuadTree API.
SVN revision: 48482
2010-04-30 17:04:28 +00:00
Lucas De Marchi c98e00eec0 Define new error handling macros
EINA_SAFETY_ON_TRUE_GOTO and EINA_SAFETY_ON_FALSE_GOTO are now defined
to ease error handling. Functions might need to take actions before
returning upon safety checks fail.




SVN revision: 48478
2010-04-30 14:54:05 +00:00