Commit Graph

6796 Commits

Author SHA1 Message Date
Cedric BAIL ee56641dc8 Remove unused variable and check error return.
SVN revision: 38342
2008-12-29 10:29:08 +00:00
Cedric BAIL 41a6b9d484 Check decompression error. Potential bug detected by llvm static analyser.
SVN revision: 38341
2008-12-29 09:39:03 +00:00
Cedric BAIL 73c686a5ea Fix a little mistake.
SVN revision: 38339
2008-12-29 08:53:19 +00:00
Cedric BAIL e537976f58 Use correct type.
SVN revision: 38338
2008-12-29 08:53:01 +00:00
Vincent Torri c80770901d * configure.ac:
add SECURITY_WIN32 to the proprocessor on Windows XP,
	should fix the bug with security.h



SVN revision: 38334
2008-12-27 18:57:54 +00:00
Vincent Torri ac3bcc3fa9 * src/bin/evil_test_environment.c:
check returned value
	* src/bin/evil_test_memcpy.c:
	define getpagesize() for vc++
	* src/lib/evil_unistd.c:
	move inclusion of time.h after windsock2.h
	include direct.h for vc++
	use _WIN32_WCE for Windows CE compilers in evil_getcwd()
	* src/lib/Evil.h:
	* src/lib/evil_unistd.h:
	move getcwd() define from Evil.h to evil_unistd.h
	add some C99 types to Evil.h for vc++ (will be used in eina)
	* src/lib/evil_fcntl.c:
	include io.h for vc++
	* src/lib/evil_link_xp.cpp:
	use full name for symlink(). Fix symlink on Windows XP with
	the DOS prompt or the debugger of Visual Studio.
	* src/lib/evil_mman.c:
	don't include unistd.h if vc++ is used
	* src/lib/evil_stdio.h:
	formatting
	* src/lib/evil_stdlib.h:
	* src/lib/evil_stdlib.c:
	define putenv only for mingw32ce
	move the returned value of setenv()



SVN revision: 38333
2008-12-27 18:53:56 +00:00
Gustavo Sverzut Barbieri b6e27a739f oops, it's EINA_SAFETY_CHECKS, not just SAFETY_CHECKS.
SVN revision: 38328
2008-12-26 19:14:57 +00:00
Gustavo Sverzut Barbieri ab95d9183d eina safety checks.
safety checks will report null pointers and other error conditions on
public api's and can be disabled by compile time check.

note that in order to have these checks working we need to make
EINA_ARG_NONNULL() void, otherwise GCC can remove these checks since
they're known to be false.

This commit also make two minor changes:

  * list and hash accessors and iterators are created even for empty
    entities. This is correct in my point of view since NULL should
    indicate error. Having these in were an optimziation, but not
    worth it, these are not the most common case and hitting this path
    is not of much cost.

 * unmarked some parameters as nonnull, mainly on list and inlist.



SVN revision: 38327
2008-12-26 18:31:14 +00:00
Gustavo Sverzut Barbieri b0ee5696a6 eina gets lots of gcc attributes to its api.
this should help with optimizations and code correctness, please see
"info gcc" for detailed explanation on these.

if you experience some functions not working as expected, please
double check if they're not marked with EINA_PURE or EINA_CONST, maybe
I misused them. Remove the macro and try again.

brief explanation:

 * EINA_WARN_UNUSED_RESULT: if you forgot to use the return of some
   function, it will emit a warning (and -Werror will make it an
   error). This way it will be harder to miss the attribution
   "l = eina_list_append(l, v)".

 * EINA_ARG_NONNULL(index, index...): if you give it an explicit NULL
   argument, or some tool (ie: clang) finds it could get a NULL but
   this is not accepted by API, then a warning will be emitted.  This
   will help those that still use eina_hash_add() as if it is
   evas_hash_add().

 * EINA_MALLOC: any non-NULL pointer it returns cannot alias any other
   pointer valid when function returns.

 * EINA_PURE: function have no effects other than the return and this
   return just depend on parameters and/or globals. You might call
   this function in a loop a thousand times and it will return the
   same value, thus you may move this function outside the loop and
   remove it.

 * EINA_CONST: stricter version of EINA_PURE, it will not check for
   global parameters, that is, you cannot consider pointer
   arguments. Use it for math things like "int sqrt(int)".

 * EINA_PRINTF(fmt, arg): will check format parameter specified in
   position "fmt" and passed arguments starting at position "arg", it
   will check for things like giving integers where short or strings
   were expected.

 * EINA_SCANF(fmt, arg): similar to eina_printf().

 * EINA_FORMAT(fmt): for use with things like dgettext(), it will get
   a printf-like format string and modifies it.

Please review and test it with your software, make sure you make clean
before you install the new version so it has any effect.

If you find some functions are missing EINA_WARN_UNUSED_RESULT and
EINA_ARG_NONNULL or others, please add them.



SVN revision: 38323
2008-12-26 13:17:51 +00:00
Gustavo Sverzut Barbieri 363ddc283d fix locking around entry_surface_alloc.
we must make sure flags are consistent with actual values, so lock
around use and set of these variables as well.



SVN revision: 38322
2008-12-26 12:50:55 +00:00
Carsten Haitzler 297858d10c calloc not malloc! bad patches!
SVN revision: 38318
2008-12-25 08:35:51 +00:00
Carsten Haitzler 8b4a02c601 use correct #ifdef
SVN revision: 38314
2008-12-23 23:54:51 +00:00
Gustavo Sverzut Barbieri f4ccaaa15d Cancel preload if file a new file is set.
SVN revision: 38313
2008-12-23 23:15:53 +00:00
Gustavo Sverzut Barbieri 68bd5fb68b Possible last try to fix async imagre preload race conditions.
1 - use inlist as regular list uses non-thread safe mempool;
 2 - lock around image loading, so if main thread requests pixels right
     before worker thread is loading them, you don't get ie->info.module
     to NULL while it would be used (triggered from engines/common).
     Maybe this should be handled by a global mutex elsewhere instead of
     per-image mutex, but it has more granularity now.
 3 - emit "preloaded" callback if it was canceled to be loaded from main
     thread.

Please someone review these changes.



SVN revision: 38312
2008-12-23 23:07:48 +00:00
Gustavo Sverzut Barbieri 48d7998c6e attempt to fix image preload thread bugs 1: module refcount.
image preload will use modules from threads, there is a possibility to
crash due wrong reference counting.

actually much more can fail, we need to check modules don't keep that
needs exclusive access in globals or per-Evas_Module, but that's
another issue.

TODO: replace spinlocks with atomic operations.



SVN revision: 38309
2008-12-23 21:20:43 +00:00
Gustavo Sverzut Barbieri de8b6a7bbd fix possible errors with pointer/offset calculation.
it works on gcc, but maybe it would break in other compilers, so make
it safe.



SVN revision: 38302
2008-12-23 20:05:44 +00:00
Gustavo Sverzut Barbieri 7eb0826e29 remove dead stores and reduce some variable scope.
from clang report.


SVN revision: 38294
2008-12-23 19:17:55 +00:00
Gustavo Sverzut Barbieri 586979c07b fix bugs spotted by clang static analyser.
We had some problems with preload and after running LLVM's CLang
Static Analyser we found out that current->target could be NULL after
loop.

Also fixed some GCC and CLang warnings, kudos to these wonderful tools
that "Saved The Day".

PS: we should put some CLang Static Analyser results so others can
help fix other parts of E.



SVN revision: 38293
2008-12-23 18:14:16 +00:00
Cedric BAIL fb238897e5 Use float instead of double.
SVN revision: 38292
2008-12-23 17:23:35 +00:00
Cedric BAIL e006567cb0 Make it compile on Solaris.
SVN revision: 38290
2008-12-23 13:33:11 +00:00
Cedric BAIL 2c9ac0bd82 Remove now uneeded header.
SVN revision: 38289
2008-12-23 13:23:10 +00:00
Cedric BAIL 889d40abf8 Remove PATH_MAX use.
SVN revision: 38288
2008-12-23 13:12:06 +00:00
Cedric BAIL 6a87ca7590 Make code understandable by Visual Studio.
SVN revision: 38287
2008-12-23 10:04:46 +00:00
Cedric BAIL c8714d04cc Declaration should be done before any code.
SVN revision: 38286
2008-12-23 10:02:27 +00:00
dm 80e15cbeef Evas Win32 VS8 projects added
SVN revision: 38284
2008-12-22 23:24:22 +00:00
dm 729bf1a8e5 Eet Win32 VS8 project modified
SVN revision: 38283
2008-12-22 23:21:49 +00:00
dm 77dedbca06 Eina Win32 VS8 project added
SVN revision: 38282
2008-12-22 23:20:52 +00:00
dm 7ad6bb42fc Evil Win32 VS8 projects modified
SVN revision: 38281
2008-12-22 23:18:41 +00:00
Cedric BAIL 61199e56ee Fix sdl engine.
SVN revision: 38277
2008-12-22 11:16:26 +00:00
Ulisses Furquim c2651a9f31 Fix segfault when double freeing a string.
This fix makes it work again. However, ecore plugin should really be rewritten
or we should start considering eina_module instead.


SVN revision: 38275
2008-12-22 02:30:17 +00:00
Gustavo Sverzut Barbieri c36a5f23c3 and we must always pre_free, otherwise we end being called after canvas free.
SVN revision: 38272
2008-12-21 22:33:35 +00:00
Gustavo Sverzut Barbieri 0ec59ba102 must dissociate even if we will not delete the canvas.
otherwise subsequent associate requests will crash on us by using stale pointer.



SVN revision: 38271
2008-12-21 22:29:50 +00:00
Gustavo Sverzut Barbieri b1f00aa9d5 edjeL convert error code to string.
SVN revision: 38268
2008-12-21 18:39:36 +00:00
Gustavo Sverzut Barbieri aa3cd47bf2 oops, fix doc example.
SVN revision: 38267
2008-12-21 18:19:33 +00:00
Gustavo Sverzut Barbieri 765b770f82 oops, eina_stringshare_strlen() should never account '\0'.
SVN revision: 38260
2008-12-21 06:45:09 +00:00
Gustavo Sverzut Barbieri 15a2b2aaf2 force recalc after set_tween_state().
SVN revision: 38258
2008-12-21 02:17:31 +00:00
Vincent Torri d945c93a08 use ecore_pipe in gstreamer module
SVN revision: 38251
2008-12-20 16:31:55 +00:00
Gustavo Sverzut Barbieri 02ced33a33 Oops! ecore must not depend on ecore-evas!
move helper function inside ecore-evas.



SVN revision: 38250
2008-12-20 15:19:48 +00:00
Vincent Torri e66e9cc905 * ecore_win32_window.c:
fix fullscreen

 * ecore_evas_win32.c:
   add fullscreen (d3d and ddraw) and shape (d3d) support
   minor formatting

 * configure.ac:
   enable direct3d support



SVN revision: 38248
2008-12-20 14:37:04 +00:00
Gustavo Sverzut Barbieri 1fc336c2ee ecore_getopt: common callbacks go in.
ecore_evas_list_engines and geometry_parse, they're used in almost all
applications using ecore_getopt, let's avoid replicating code.



SVN revision: 38247
2008-12-20 14:29:45 +00:00
Gustavo Sverzut Barbieri 089b1c7925 fix image preload signature and make it callback if already preloaded.
evas_object_image_preload() should not use object as const because it
will mdofiy the object state (so it's semantic makes more sense).

if data was already loaded, then callback before ignored it (return).



SVN revision: 38246
2008-12-20 13:39:15 +00:00
Vincent Torri 4f96f46169 useless file
SVN revision: 38245
2008-12-20 13:24:27 +00:00
Vincent Torri c989841ab6 * src/modules/engines/direct3d/:
fast direct3d engine written by Dmitriy Mazovka. You rock !

 * m4/evas_check_engine.m:
 * m4/evas_check_loader.m4:
   use m4_popdef for each macro (otherwise, fail if aclocal is too old)

 * src/lib/canvas/evas_font_dir.c:
   include evas_common.h and evas_private.h after Eet.h and Evil.h
   so that EAPI is correctly defined



SVN revision: 38244
2008-12-20 13:22:46 +00:00
Vincent Torri 8b5ff6cb40 make compilation work on Windows XP
SVN revision: 38243
2008-12-20 13:18:27 +00:00
Gustavo Sverzut Barbieri 4821dcf1f8 always call image preloaded callback.
if image was already preloaded, inform user.

regular use case is to have image hidden, ask for preload and then
show image on callback, if there is no callback, image is never shown.



SVN revision: 38236
2008-12-19 21:56:31 +00:00
Jonathan Atton e58ac7064c missing parenthesis
from caro.



SVN revision: 38235
2008-12-19 21:28:32 +00:00
Jonathan Atton 11c671429e include the headers in the correct order so that EAPI is correctly defined on Windows
from caro


SVN revision: 38234
2008-12-19 20:54:13 +00:00
Cedric BAIL 5383cabf2b Fix EINA_ARRAY_ITER_NEXT off by one bug. With this fix you can no longer push
NULL pointer inside an array.


SVN revision: 38232
2008-12-19 17:55:57 +00:00
Carsten Haitzler a38ab7590d doc++
SVN revision: 38229
2008-12-19 14:44:47 +00:00
Carsten Haitzler d3f645a37a add del flag to associate
SVN revision: 38225
2008-12-19 14:30:03 +00:00
Carsten Haitzler 8da641854b dont resize/move fullscreen canvases
SVN revision: 38224
2008-12-19 13:11:21 +00:00
Viktor Kojouharov fa95a224da a vimball script for edc (and embryo). It includes an up-to-date syntax files for edc and embryo, indent and omni-completion scripts
SVN revision: 38207
2008-12-18 10:37:11 +00:00
Iván Briano d413635b56 More proper fix for the infinite calculate in evas box.
SVN revision: 38205
2008-12-18 03:04:15 +00:00
Iván Briano 7f3dfc66f2 And finally, edje table goes in
SVN revision: 38204
2008-12-18 02:43:20 +00:00
Iván Briano 31658d4f1e Added iterator and accessor to box and table
SVN revision: 38203
2008-12-18 02:39:09 +00:00
Cedric BAIL 136be96d28 Use small hash table insteed of bigger one. And move collection hash initialization a bit later.
SVN revision: 38186
2008-12-17 16:10:07 +00:00
Cedric BAIL 35540b3a3b This commit is huge. I did test it a lot on my computer, and it run fine here.
But is so big i fear i could have broken some piece of code. So report any wrong
behaviour to me (cedric on #edevelop).

So moving e17 and efreet to eina_hash. With a little efreet API break so they
must come together.


SVN revision: 38185
2008-12-17 15:33:43 +00:00
Cedric BAIL e33474c92f Move to eina_hash. Nothing should break, but if you experience any unexpected behaviour
please ping me on #edevelop.



SVN revision: 38183
2008-12-17 14:26:47 +00:00
Iván Briano 05af27f999 Guard box from getting into an infinite loop when calculating layout.
SVN revision: 38182
2008-12-17 14:10:09 +00:00
Cedric BAIL 3d41b74146 Update ac_attribute macro and remove __UNUSED__ declaration from eina.
SVN revision: 38179
2008-12-17 13:03:00 +00:00
Carsten Haitzler 4b2fd7c5aa engine in list--
SVN revision: 38177
2008-12-17 08:24:09 +00:00
Carsten Haitzler 53c9394d3b dont need xcb engine code anymore
SVN revision: 38176
2008-12-17 08:18:13 +00:00
Carsten Haitzler 6fc7c79741 use new engine merge.
SVN revision: 38175
2008-12-17 08:16:21 +00:00
Carsten Haitzler fb85d912b6 vtorri's merge of xcb and x11 software engines.
SVN revision: 38173
2008-12-17 08:13:49 +00:00
Sebastian Dransfeld 28bf361096 Fix eina hash usage.
When using eina hash we need to create the hash if it does not exist.

SVN revision: 38172
2008-12-17 08:04:42 +00:00
Cedric BAIL c80a55ee14 Add small bucket support.
SVN revision: 38168
2008-12-16 16:49:29 +00:00
Cedric BAIL 00b5758937 Add include to remove warning.
SVN revision: 38167
2008-12-16 16:49:00 +00:00
Jaime Thomas a0ec6162f7 Plugin fixes, ewl_test workes now.
SVN revision: 38164
2008-12-16 00:40:22 +00:00
Iván Briano 140b0a9fca Add function to get the length in characters of a string
SVN revision: 38158
2008-12-15 22:03:04 +00:00
Sebastian Dransfeld 4615291cc2 evas_hash -> eina_hash
SVN revision: 38157
2008-12-15 21:00:19 +00:00
Sebastian Dransfeld 54b5d7d631 Fix compiler warnings.
SVN revision: 38156
2008-12-15 20:52:51 +00:00
Sebastian Dransfeld 804b284419 Fix hash foreach cb.
SVN revision: 38155
2008-12-15 20:49:59 +00:00
Sebastian Dransfeld 0b2c10c1c6 Add function prototypes to header.
SVN revision: 38154
2008-12-15 20:31:26 +00:00
Sebastian Dransfeld 1de2e74d74 Adding missing Name entry in efreet_menu.
Add fix from Massimiliano Calamelli.

SVN revision: 38153
2008-12-15 20:23:24 +00:00
Sebastian Dransfeld 582e0768fe Remove ecore-desktop
SVN revision: 38151
2008-12-15 18:39:01 +00:00
Sebastian Dransfeld 48202c24bc Misc cleanup.
- Don't use EAPI for internal functions.
- Add prototypes to header.
- Some compiler warnings.

SVN revision: 38150
2008-12-15 17:59:19 +00:00
Iván Briano c76c180b22 Goodbye forgotten debug. We won't miss you.
SVN revision: 38147
2008-12-14 19:26:41 +00:00
Jaime Thomas 81c3548670 Actually, this is probably what was intended.
SVN revision: 38145
2008-12-14 17:09:46 +00:00
Jaime Thomas 364c05f124 Let mouse selections work again.
SVN revision: 38144
2008-12-14 17:07:51 +00:00
Gustavo Sverzut Barbieri 300c7b814c try to avoid infinite recalc loop.
as reported, elicity triggers an infinite loop by calling
edje_object_part_geometry_get(), which in turns calls
_edje_recalc_do() which in turns calls the elicit code that requests
edje_object_part_geometry_get() and since it's still marked as
"dirty", it enters the loop...

the real fix is just the move of ed->dirty = 0; before calling
recalcs, but I also unmarked object as need_recalculate so we can even
avoid requesting object to recalculate from evas.



SVN revision: 38139
2008-12-14 16:30:29 +00:00
Sebastian Dransfeld 82c1c80632 Only save menu element name if it exists.
SVN revision: 38131
2008-12-13 21:00:49 +00:00
Vincent Torri 55f7df7ef9 * src/bin/Makefile.am:
* src/bin/evil_test_gettimeofday.c:
	fix unit test; now all tests pass, finally
	* src/lib/evil_unistd.c:
	fix gettimeofday() on mingw32ce



SVN revision: 38130
2008-12-13 18:43:16 +00:00
Vincent Torri 87ededafe7 * src/bin/Makefile.am:
and don't compile test_dlfcn...



SVN revision: 38129
2008-12-13 17:19:28 +00:00
Vincent Torri 93bded8fd2 * src/bin/evil_suite.c:
do not access to undefined pointer



SVN revision: 38128
2008-12-13 17:11:31 +00:00
Vincent Torri e4978aeae2 * src/bin/test_dlfcn.c:
remove dlfcn test, is in the unit test now



SVN revision: 38127
2008-12-13 16:07:23 +00:00
Vincent Torri 826fd4ce79 * src/bin/Makefile.am:
* src/bin/evil_test_dlfcn.c:
	* src/bin/evil_test_dlfcn.h:
	add dflcn unit test
	* src/bin/evil_suite.c:
	show result of the unit tests and add dlfcn unit test
	* src/bin/evil_test_environment.c:
	remove debug
	* src/bin/evil_test_gettimeofday.c:
	debug, not working yet :/
	* src/bin/evil_test_link.c:
	* src/lib/evil_link_ce.c:
	fix link support on Windows CE



SVN revision: 38126
2008-12-13 16:04:05 +00:00
Gustavo Sverzut Barbieri 643624fe59 helper: evas_object_image_filled.
This helper will take care of applying fill property to match object size.



SVN revision: 38120
2008-12-12 22:36:47 +00:00
Gustavo Sverzut Barbieri f29338d413 Bugfix: do not search/delete in non-existent hashes.
SVN revision: 38119
2008-12-12 22:34:20 +00:00
Gustavo Sverzut Barbieri 11d859481f Nasty bugfix: allow smart calculate to mark object as dirty again.
Wow, this was tricky to find since it is hard to trigger, thanks to
Canola complex edje files we could spot it!

In some cases we end with object being marked as dirty while
calculating its state (ie: edje), then we need to run smart calculate
again.

This has a drawback however: we cannot check for need_recalculate()
inside smart calculate anymore, we must assume it is only called if
the flag is set. To avoid that we could mark a shadow member and use
that or use a counter, that has the problem of using more data.




SVN revision: 38108
2008-12-11 21:55:22 +00:00
Cedric BAIL 642d8686de Remove ecore_hash and eina_hash use from ecore.
SVN revision: 38105
2008-12-11 13:55:47 +00:00
Cedric BAIL db11d16b7f Manipulating NULL iterator should be concidered as a defined behaviour as it
give the possibility to write small code like :

it = eina_hash_iterator_tuple_new(hash);
eina_iterator_foreach(it, do_something_cb, NULL);
eina_iterator_free(it);

If hash is empty, but valid it will return a NULL iterator for this
example.


SVN revision: 38104
2008-12-11 13:54:59 +00:00
Cedric BAIL b8d721ac05 If we set the data free callback of a hash, we expect it to be called when
calling all eina_hash_del functions.


SVN revision: 38102
2008-12-11 13:47:58 +00:00
Gustavo Sverzut Barbieri 3e9459fd60 Proper wrapper for evas_hash around eina_hash.
Eina hash api must get non NULL pointer allocated with
eina_hash_new(), but Evas hash started with NULL and would allocate
and destroy the hash as required by operations.

To do a proper wrapper we must ensure we don't call Eina hash API with
NULL, we must handle that outside Eina.

PLEASE do not remove this code again (it's the second time I add it),
this is the correct approach. Other than that is going after evas_hash
usage and converting directly to eina_hash.




SVN revision: 38091
2008-12-10 21:26:17 +00:00
Vincent Torri 89937e8cf5 * src/lib/Evil.h:
be sure to include stdio.h before redefining the
	functions that are declared int it.



SVN revision: 38076
2008-12-10 06:15:03 +00:00
Gustavo Sverzut Barbieri 1d560a6229 better handling of unset image fill property.
Unset value is now 0x0 and this is handled as invalid, with an error message.

1x1 is a valid fill, but it is very slow and often system hangs while
it scale the whole thing... usually nobody want it at 1x1, we just end
using that for unset values. With unset value at 0x0 it will not
happen and we'll know when we forgot to do so!.



SVN revision: 38071
2008-12-09 22:46:57 +00:00
Vincent Torri 26d595d0d8 * src/bin/evil_test_gettimeofday.c:
add output
	* src/bin/evil_test_link.c:
	add a unit test for readlink()
	* src/lib/evil_link_xp.cpp:
	fix readlink() and symlink() on Windows XP



SVN revision: 38070
2008-12-09 22:27:53 +00:00
Sebastian Dransfeld dd4a299895 Remove const qualifier.
Dynamically allocated buffers which we will free shouldn't be const.

SVN revision: 38069
2008-12-09 20:08:36 +00:00
Chidambar Zinnoury c4525334f3 Leak --: ecore_file_dir_get always returns a new buffer.
SVN revision: 38068
2008-12-09 18:28:45 +00:00
Gustavo Sverzut Barbieri c8d86791e6 Include stdio.h so ecore_getopt_help() is fine.
We need FILE* for ecore_getopt_help().



SVN revision: 38067
2008-12-09 18:15:28 +00:00
Cedric BAIL 2b278b9419 Remove use of evas_hash from evas and use directly eina.
SVN revision: 38066
2008-12-09 17:56:31 +00:00
Cedric BAIL 9bdf013fa4 Better put pointer at the beginning of the structure.
SVN revision: 38065
2008-12-09 17:55:33 +00:00
Cedric BAIL 9b9f752379 Only allocate hash bucket when needed.
Make eina_hash_del_by_key really different from eina_hash_del.


SVN revision: 38064
2008-12-09 17:39:48 +00:00
Cedric BAIL 00e8fba9ba All eina_hash_find* functions should not report problem when hash or key is NULL.
SVN revision: 38059
2008-12-09 14:59:30 +00:00
Cedric BAIL 8ee267ec0d Remove uneeded included.
SVN revision: 38058
2008-12-09 14:30:54 +00:00
Cedric BAIL b0e1863871 eina_hash_find should not complain when hash or key is NULL.
SVN revision: 38057
2008-12-09 14:24:08 +00:00
Cedric BAIL 68cfd7839f Add a visual feedback to counte test.
SVN revision: 38056
2008-12-09 13:58:04 +00:00
Cedric BAIL 24c1995b68 Change eina_counter_dump to return a string so it could work easily on windows.
SVN revision: 38055
2008-12-09 13:55:10 +00:00
Cedric BAIL af30207725 eina_hash_del must honor the data parameter when the key is passed. Propagate
it correctly.


SVN revision: 38054
2008-12-09 13:52:09 +00:00
Chidambar Zinnoury dfadbd5bd7 When your libc doesn't provide iconv, and that you use GNU libiconv, iconv is available on libiconv_plug.so.
SVN revision: 38052
2008-12-09 13:31:38 +00:00
Cedric BAIL 273b7422d6 It's cleaner to first include private header as they could define macro
differently than public interface.


SVN revision: 38050
2008-12-09 13:06:17 +00:00
Cedric BAIL d19801f7c2 Prevent warning from Eina Magic when hash population is 0.
SVN revision: 38049
2008-12-09 13:05:33 +00:00
Cedric BAIL 3c1b5cfb3c Fix documentation.
SVN revision: 38048
2008-12-09 13:02:44 +00:00
Cedric BAIL 55d9c97446 __UNUSED__ macro is not exported by eina.
SVN revision: 38045
2008-12-09 11:01:12 +00:00
Davide Andreoli d77abdd28b * Better size_hint calc for vertical and horiz layout, need to do the same for the other layouts
SVN revision: 38035
2008-12-09 00:02:48 +00:00
Carsten Haitzler 28c433974a olof patch - fix typo for password
SVN revision: 38034
2008-12-08 23:47:04 +00:00
Cedric BAIL 5358b1f84f Add integer and pointer hash table helper.
SVN revision: 38026
2008-12-08 17:31:55 +00:00
Cedric BAIL e51aa4745a Valgrind complain when doing IC Destroy after XCloseDisplay, doing it before
sounds better to valgrind.


SVN revision: 38021
2008-12-08 14:29:44 +00:00
Cedric BAIL 2c668d6747 The for loop inside _edje_file_del is accessing Edje_Real_Part that could be
destroyed by _edje_cache_coll_unref. So moving the call to _edje_cache_coll_unref
after the last use of Edje_Real_Part should be better.


SVN revision: 38020
2008-12-08 14:23:26 +00:00
Cedric BAIL 94aaa28ef9 Fix warning. evas_hash_free never returned anything.
SVN revision: 38019
2008-12-08 12:49:36 +00:00
Cedric BAIL c7b0e0a6b3 Fix include related to previous Eina Magic patch.
SVN revision: 38017
2008-12-08 10:51:51 +00:00
Cedric BAIL 199f900908 Application and library using Eina Magic API should be able to decide if they
want to check magic or not. This should not be forced by Eina config.


SVN revision: 38014
2008-12-08 10:18:05 +00:00
Iván Briano d4d14f54ed Very basic Input Method support. For now, it only uses X default to support things like composed characters with deadkeys kb layouts.
SVN revision: 38008
2008-12-08 00:28:37 +00:00
Gustavo Sverzut Barbieri 8ea28f64b7 hash: better handling of NULL, add magic checking.
* evas: if we automatically destroy hash, check for NULL before
   handling it to eina api, which expect elements to be created with
   eina_hash_new() and thus will fail on NULL.
 * eina: add magic checking for eina_hash and eina_hash_iterator, this will
   help spot when NULL is used.
 * eina_hash_foreach: do not try to create the iterator if hash is NULL.



SVN revision: 37982
2008-12-07 13:28:29 +00:00
Vincent Torri 7dfff8ac98 fix software_16_ddraw engine compilation
SVN revision: 37966
2008-12-06 20:30:15 +00:00
Vincent Torri 193eb2b92a detect fnmatch first in evil, then in iberty
SVN revision: 37963
2008-12-06 18:42:30 +00:00
Gustavo Sverzut Barbieri b21c687f61 refactor eina_hash_del*, expose simpler functions and avoid GCC hack.
By using simpler functions for hash element deletion we can avoid the
hack to shut up GCC warking about hash_num not being used. As these
simple functions are more often needed than the catch-all, expose them
as well.



SVN revision: 37962
2008-12-06 06:58:56 +00:00
Gustavo Sverzut Barbieri 09924b54e5 Let valgrind help with EINA_MAGIC.
Keep EINA_MAGIC at the end of the structure (WHEN POSSIBLE! Watch out
flexible arrays like char str[] at the end!)

this way if parts use EINA_MAGIC and others do not, it will possible overflow and valgrind can help us.

WARNING: make uninstall before update! Then make clean and make install, check if everything is working with "make check".



SVN revision: 37961
2008-12-06 06:53:14 +00:00
Gustavo Sverzut Barbieri 5939d76d9c Fix couple of issues with MAGIC handling.
eina_magic.h MUST include eina_config.h, otherwise it will not
consider EINA_MAGIC stuff. Worse than that, some files were including
that directly and were considering EINA_MAGIC attribute even if the
file that alloc'ed the memory were not!

Also add missing EINA_MAGIC_SET() to iterators and accessors.



SVN revision: 37960
2008-12-06 06:17:11 +00:00
Gustavo Sverzut Barbieri 08832b519b grow array only when required, use step properly.
We need to grow when we reach total amount, not when current + step > total.



SVN revision: 37959
2008-12-06 06:13:55 +00:00
Gustavo Sverzut Barbieri 091741f861 Force dummy_symbol to be visible.
"make check" was failing with -fvisibility=hidden.



SVN revision: 37958
2008-12-06 06:12:30 +00:00
Gustavo Sverzut Barbieri 6203f4b6be do not segv on NULL inlist.
this was exposed by "make check", counter had no tests and it was failing.



SVN revision: 37957
2008-12-06 06:11:39 +00:00
Gustavo Sverzut Barbieri a00eaac6a6 Make it possible to create iterators outside Eina.
Many places in EFL we just create walk something, create a list with
walked data, return, then the user walks it again and then deletes
(which will walk again). For such cases it's way better to define
iterators or accessors.

I'm not moving any EFL code to it now, but if people are interested,
things like evas_render_method_list(), evas_font_available_list(),
evas_objects_at_xy_get(), evas_objects_in_rectangle_get(),
evas_object_smart_members_get() are good candidates. If the subject is
already using Eina list, then you can just use
eina_list_iterator_new() and return it, otherwise you can define your
own iterator, which is very easy.



SVN revision: 37956
2008-12-06 03:41:03 +00:00
Gustavo Sverzut Barbieri 2f8f874b20 Shut up a bunch of warnings and fix some real errors.
SVN revision: 37954
2008-12-06 03:08:17 +00:00
Gustavo Sverzut Barbieri b023145eed shut up gcc warning, with comment.
SVN revision: 37953
2008-12-06 03:02:30 +00:00
Carsten Haitzler 84f8c174bf fix list accounting on sort! bad - how did this hide for so long?
SVN revision: 37951
2008-12-06 02:51:04 +00:00
Gustavo Sverzut Barbieri f8868ffa96 Fix namespace: Eina_Foreach -> Eina_Hash_Foreach.
SVN revision: 37950
2008-12-06 02:21:17 +00:00
Gustavo Sverzut Barbieri 03fca99e56 Add safe Eina list walk function.
SVN revision: 37949
2008-12-06 02:13:01 +00:00
Gustavo Sverzut Barbieri 00fd3ccc3a fix list iteration and removal inside edje box.
maybe we should add EINA_LIST_FOREACH_SAFE?



SVN revision: 37947
2008-12-06 01:44:01 +00:00
Vincent Torri 7b9b40334f * src/lib/evil_main.c:
always export evil_init() and evil_shutdown()



SVN revision: 37945
2008-12-05 22:50:24 +00:00
Gustavo Sverzut Barbieri 288a77ea18 Hopefully fix some problems with Edje fnmatch and callbacks.
* Fix buffer overflow with EDJE_PROGRAM_CACHE (not tested since I don't use it).
 * break_prog should always unset walking_callbacks and do after-tasks.
 * Fix list walking! ouch!!!



SVN revision: 37944
2008-12-05 22:32:04 +00:00
Cedric BAIL 9c381ceb1f Better error handling with eet identity.
SVN revision: 37937
2008-12-05 09:42:06 +00:00
Nicholas Hughart 0b63514546 Some tweaks/fixups for abstract sockets.
SVN revision: 37931
2008-12-05 04:48:12 +00:00
Chidambar Zinnoury 5c2c6049f1 Use includedir instead of prefix/include to install Eina headers.
SVN revision: 37925
2008-12-04 16:25:40 +00:00
Carsten Haitzler a0f7a66e8d in svn.
SVN revision: 37919
2008-12-03 22:21:40 +00:00
Vincent Torri c8bb3dc658 add cast
SVN revision: 37915
2008-12-03 17:59:39 +00:00
Vincent Torri 1457850b4f add cast
SVN revision: 37914
2008-12-03 17:58:26 +00:00
Chidambar Zinnoury ef7cd1e966 Typo: --enable enables an option.
SVN revision: 37913
2008-12-03 17:27:51 +00:00
Vincent Torri e407285fb1 * src/bin/evil_test_gettimeofday.c:
replace evil_gettimeofday by gettimeofday
	* src/lib/evil_string.c:
	* src/lib/evil_string.h:
	add strcoll() "port" to Windows CE OS. Note it's
	just strcmp, no locale stuff is used onn that OS.



SVN revision: 37910
2008-12-03 00:36:31 +00:00
Carsten Haitzler a2cd677cdc ok - revert scalecache until leak fixed.
SVN revision: 37899
2008-12-02 02:33:09 +00:00
Carsten Haitzler 72c25fd2fc quick - evas scalecache put this in svn do i dont lose my patch. i'll revert
and work on gettign the leak fixed.



SVN revision: 37898
2008-12-02 02:32:22 +00:00