Commit Graph

674 Commits

Author SHA1 Message Date
Carsten Haitzler 9b006054b7 again -> shut cppcheck up.
SVN revision: 51547
2010-08-22 22:32:30 +00:00
Carsten Haitzler b1dee3fc6d leak-- in win32 code.
SVN revision: 51546
2010-08-22 22:30:55 +00:00
Carsten Haitzler 64d565228a cppcheck doesn't like it if u dont first init all data before using
contents of that struct (minus the thing u are about to set)



SVN revision: 51545
2010-08-22 22:29:25 +00:00
Carsten Haitzler eb1a43bfbf oops - formatting at start too - not just end
SVN revision: 51510
2010-08-22 05:47:44 +00:00
Carsten Haitzler 1974702021 fmting
SVN revision: 51507
2010-08-22 02:32:47 +00:00
Joerg Sonnenberger 4497367d7f From: Joerg Sonnenberger <joerg@britannica.bec.de>
pthread_t is opaque, so make less assumptions...



SVN revision: 51506
2010-08-22 01:15:47 +00:00
Vincent Torri 0686aa04af add vasprintf declaration on Windows
SVN revision: 51497
2010-08-21 17:25:46 +00:00
Lucas De Marchi 5a8a8c9014 Convert (hopefully) all comparisons to NULL
Apply badzero.cocci, badnull.coci and badnull2.cocci

This should convert all cases where there's a comparison to NULL to simpler
forms. This patch applies the following transformations:

code before patch               ||code after patch
===============================================================

return a == NULL;                 return !a;

return a != NULL;                 return !!a;

func(a == NULL);                  func(!a);

func(a != NULL);                  func(!!a);

b = a == NULL;                    b = !a;

b = a != NULL;                    b = !!a;

b = a == NULL ? c : d;            b = !a ? c : d;

b = a != NULL ? c : d;            b = a ? c : d;


other cases:

a == NULL                         !a
a != NULL                         a




SVN revision: 51487
2010-08-21 13:52:25 +00:00
Cedric BAIL e6f9cee051 * eina: fix structure content to be more futur proof and reduce
risk of ABI breakage.


SVN revision: 51390
2010-08-19 12:02:28 +00:00
Tom Hacohen 6a0b488468 Eina: Moved the private headers to src/lib where they belong.
SVN revision: 51388
2010-08-19 08:30:01 +00:00
Cedric BAIL ccebf54881 * eina: fix some warning by Albin Tonnerre.
SVN revision: 51246
2010-08-17 11:48:50 +00:00
Vincent Torri ca4497509e i forgot about amalgamation. fix declaration too
SVN revision: 51243
2010-08-17 07:39:53 +00:00
Vincent Torri 333b64f15e some doc fixes
SVN revision: 51242
2010-08-17 06:58:26 +00:00
Vincent Torri d4cd8f28ae formatting
SVN revision: 51241
2010-08-17 06:05:21 +00:00
Vincent Torri 32932b4135 alloca() declaration
SVN revision: 51240
2010-08-17 05:44:11 +00:00
Vincent Torri 4e09c14e08 formatting
SVN revision: 51239
2010-08-17 05:28:34 +00:00
Vincent Torri 13a1bdf6e0 formatting
SVN revision: 51237
2010-08-17 05:21:13 +00:00
Lucas De Marchi 80b44315f7 eina-0 is no more, check for the right package name
SVN revision: 51235
2010-08-17 03:59:29 +00:00
Cedric BAIL 6293bd87fa * eina: fix amalgamation.
SVN revision: 51210
2010-08-16 13:52:34 +00:00
Cedric BAIL f75eab161d * eina: remove thread safe data type for now. They will be back !
SVN revision: 51179
2010-08-16 09:32:09 +00:00
Carsten Haitzler c747bfaadb well got to start somewhere. eina 1.0.0 alpha readied. need to go over
code formatting still (headers specifically). bring doc building
in-line with other efl libs. README is useful now. Changelog waiting
to be filled in for 1.0.0



SVN revision: 51154
2010-08-16 05:40:50 +00:00
Mike Blumenkrantz ad00478247 fix threadsafe api
SVN revision: 51118
2010-08-14 16:10:19 +00:00
Cedric BAIL 3b269d6f04 * eina: don't direct people in the wrong direction.
SVN revision: 51117
2010-08-14 15:50:07 +00:00
Mike Blumenkrantz 689a24559c add threadsafety for hashes
SVN revision: 51106
2010-08-14 03:05:35 +00:00
Mike Blumenkrantz f973f8c72a add #ifdefs for some threadsafety stuff
cedric SPANK SPANK SPANK!!!


SVN revision: 51105
2010-08-14 03:03:32 +00:00
Iván Briano 02031b60bf Remark that data being deleted from the hash will be mercilessly killed if a blackops free function was given to the hash on creation.
SVN revision: 51079
2010-08-13 14:34:36 +00:00
Mike Blumenkrantz c8f669a27f more variable renames, null check alloc, malloc+memset0 -> calloc, rwlocks in structs
SVN revision: 51066
2010-08-13 06:58:43 +00:00
Mike Blumenkrantz 3618cf1227 rename variables and typedefs to sane values
SVN revision: 51064
2010-08-13 05:22:33 +00:00
Tom Hacohen d2988fe707 Eina: "FIX" EINA_UNICODE_EMPTY_STRING.
SVN revision: 51038
2010-08-12 14:16:32 +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 7833796e00 right...this is malloc...
SVN revision: 50963
2010-08-10 12:25:34 +00:00
Mike Blumenkrantz c09c5ed690 and these
SVN revision: 50961
2010-08-10 12:05:51 +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 6bc0a6cb14 errr use the right define for this
SVN revision: 50952
2010-08-10 03:37:21 +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
Tom Hacohen ed0f5eb857 eina: fix strdup calloc, it's number of elements and then size, and not the other way around.
SVN revision: 50898
2010-08-08 12:03:18 +00:00
Cedric BAIL 476f09d29b * eina: add some doc for one big mempool.
SVN revision: 50834
2010-08-05 12:52:30 +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
Gustavo Lima Chaves faa7644e22 Better documenting EINA_MAGIC_SET()'s use.
Patch by Jonas Gastal.



SVN revision: 50744
2010-08-02 16:57:38 +00:00
Brett Nash 9da847b538 Fix eina_unicode_strncpy
SVN revision: 50741
2010-08-02 09:44:11 +00:00
Brett Nash 7f83020567 Terminate the string after strcpy
SVN revision: 50739
2010-08-02 09:44:01 +00:00
Brett Nash 9e468e94e7 Update eina_unicode_strnlen
SVN revision: 50738
2010-08-02 09:43:57 +00:00
Brett Nash 1e8074954f Fix end points
SVN revision: 50708
2010-07-31 05:24:45 +00:00
Brett Nash db89ba43d7 eina: Actually implement strnlen for eina_unicode.
SVN revision: 50700
2010-07-31 03:54:09 +00:00
Mike Blumenkrantz d409884148 incomplete doxy!
cedric SPANK SPANK SPANK!!!


SVN revision: 50694
2010-07-30 21:18:40 +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
Cedric BAIL 836721fc6e * eina: remove some warning.
SVN revision: 50644
2010-07-29 13:59:31 +00:00
Tom Hacohen 713354b764 Eina: Fixed a bug in eina_*share_dump functions and fixed a documentation error.
SVN revision: 50600
2010-07-28 17:53:10 +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
Mike Blumenkrantz a124fffeca start binshare
SVN revision: 50581
2010-07-28 03:33:49 +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 e6ec7adedb Eina: Fix the segfault in eina_stringshare_shutdown with-enable-amalgamation.
SVN revision: 50548
2010-07-27 16:53:49 +00:00
Tom Hacohen 32c7a50118 Eina: Fix compilation with --enable-amalgamation.
Sorry dh :P

SVN revision: 50545
2010-07-27 15:15:45 +00:00
Tom Hacohen 6b69189efd Eina: Added ustringshare and binshare tests.
Fixed a small bug in binshare (in the length function).
Moved some debug messages around.

SVN revision: 50541
2010-07-27 11:43:37 +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
Mike Blumenkrantz f3ad2982b8 +eina_stringshare_vprintf for using a va_list
SVN revision: 50501
2010-07-26 05:09:02 +00:00
Brett Nash 8b858d5f7b Use offsetof rather the manual pointer compares. C89 can be taken as given I
think.  Also update authors to add Mwa, and fix copyright statement to be
useful.  (Always list years, not ranges of years... longer, but covered by
	international conventions).


SVN revision: 50500
2010-07-26 04:21:47 +00:00
Mike Blumenkrantz e43175fa37 add doxy
SVN revision: 50491
2010-07-25 19:32:03 +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 55f0882da4 revert previous. why would I do that in the first place?
SVN revision: 50407
2010-07-21 05:02:17 +00:00
Mike Blumenkrantz 50e621c5c2 remove tolower() from eina_str_tolower
SVN revision: 50404
2010-07-21 03:59:37 +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
Cedric BAIL 9660c1c66f * eina: fix tolower call.
SVN revision: 50366
2010-07-19 11:25:10 +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 0c983ac8d8 dox fixes
SVN revision: 50355
2010-07-18 18:59:01 +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 9dcd70a33d and macro whoops
SVN revision: 50319
2010-07-18 06:48:08 +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
Mike Blumenkrantz af32bf04f0 well this was just plain wrong
SVN revision: 50314
2010-07-18 03:55:53 +00:00
Mike Blumenkrantz 7d3bf122ac on the fifth day the rasterman said "let there be docs for hash tables!"
but there were no docs for hash tables because k-s and cedric were busy writing new functions for hash tables. so rasterman again said "let there be docs for hash tables! really guys, I mean it this time!"
and this time there were docs, but these docs were incomplete and in some places vague and misleading.
these docs frustrated little discomfitor, who had just healed up after learning to ride his edje bicycle and was just starting to read. so he read all that he could, and then he started to write. he wrote his little heart out until finally there were more docs for hash tables like the rasterman had wanted.
then he went and got ice cream.

The End.


SVN revision: 50313
2010-07-18 03:29:10 +00:00
Lucas De Marchi 749cc7478c Remove unneeded code with notnull.cocci script
This continues previous commit with more complex places, where it required
more than just removing some "ifs".



SVN revision: 50242
2010-07-14 02:20:30 +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 84efd3507f leak--, thanks cedric
SVN revision: 50225
2010-07-13 16:43:15 +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 b07f70b85c Update doc of eina_str_split functions
Mention that they can return NULL in case malloc() fails.



SVN revision: 50127
2010-07-08 15:08:31 +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
Brett Nash 977221953e Stringshare doesn't have a 64k limit. Don't say it does.
SVN revision: 49992
2010-07-02 08:56:09 +00:00
Gustavo Lima Chaves e868c81b30 Documentation fix for eina iterators.
SVN revision: 49951
2010-06-30 18:41:16 +00:00
Vincent Torri f5d7f3ea1a printf modifiers are different on Windows
SVN revision: 49876
2010-06-26 14:26:54 +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
Vincent Torri 61753a99a6 fix eina_convert examples
SVN revision: 49774
2010-06-20 18:39:35 +00:00
Vincent Torri 9ac5d78958 fix doc
SVN revision: 49740
2010-06-18 07:08:22 +00:00
Vincent Torri 5e09673fce typo
SVN revision: 49736
2010-06-17 21:27:41 +00:00
Carsten Haitzler 9b41314165 remove semi-colon
SVN revision: 49272
2010-05-29 06:28:38 +00:00
Carsten Haitzler 02503dd152 eina gets version thing ala eet.
SVN revision: 49267
2010-05-29 03:05:04 +00:00
Vincent Torri 9c210617f7 declare variables at the beginning of the block
SVN revision: 49254
2010-05-28 19:04:44 +00:00