Commit Graph

9260 Commits

Author SHA1 Message Date
Carsten Haitzler 07e3e08384 oops - fix.
SVN revision: 46679
2010-03-01 05:19:00 +00:00
Carsten Haitzler 2a70e8701c allow alpha ee windows.
SVN revision: 46678
2010-03-01 04:44:36 +00:00
Carsten Haitzler 5ae0845c1c begin work on argb window support for gl - glx/gl doesnt work. i think egl/gles
will tho.



SVN revision: 46677
2010-03-01 04:44:23 +00:00
Gustavo Sverzut Barbieri dba2a95572 warnings--
Ecore now goes clean on -Wall -Wextra :-)



SVN revision: 46672
2010-02-28 23:27:47 +00:00
Gustavo Sverzut Barbieri 0cece24af2 remove stupid letter I introduced by mistake.
SVN revision: 46671
2010-02-28 21:56:33 +00:00
Gustavo Sverzut Barbieri 90c5c1daaa doc improvements.
SVN revision: 46670
2010-02-28 21:29:30 +00:00
Gustavo Sverzut Barbieri 15ee9e8847 documentation improvements:
- quick access in the huuuuuuuge edcref
 - block name is top-aligned to its example fragment



SVN revision: 46668
2010-02-28 19:25:10 +00:00
Vincent Torri e9b5f89824 F_SETFL and O_NONBLOCK are supported by evil
SVN revision: 46658
2010-02-28 17:38:24 +00:00
Vincent Torri 555709fa24 abort when pthread is requested but not found
patch by Albin Tonnerre



SVN revision: 46657
2010-02-28 17:28:43 +00:00
Vincent Torri 9706b7206e abort when pthread is requested but not found
patch by Albin Tonnerre



SVN revision: 46656
2010-02-28 17:28:05 +00:00
Vincent Torri 9129d1d30a abort when pthread is requested but not found
patch by Albin Tonnerre



SVN revision: 46655
2010-02-28 17:27:38 +00:00
Vincent Torri 43908b1905 abort when pthread is requested but not found
patch by Albin Tonnerre



SVN revision: 46654
2010-02-28 17:27:23 +00:00
Gustavo Sverzut Barbieri cc5e332525 remove warnings from edje binaries.
SVN revision: 46647
2010-02-28 16:14:50 +00:00
Gustavo Sverzut Barbieri fcb71a4b3b Edje now uses Eina_Bool where it should.
SVN revision: 46646
2010-02-28 15:57:17 +00:00
Vincent Torri a8180883bb update ChangeLog
SVN revision: 46640
2010-02-28 07:58:39 +00:00
Vincent Torri c0f295f2de * remove cegcc compiler support. Only mingw32ce is supported now
* remove some shadow declarations


SVN revision: 46639
2010-02-28 07:57:03 +00:00
Gustavo Sverzut Barbieri 336e1aac6c Revert EINA_(TRUE|FALSE) as requested by vincent.
windows have TRUE/FALSE and he wants it to be like that, if required
he will replace the efl-specific places later.



SVN revision: 46586
2010-02-27 16:45:20 +00:00
Gustavo Sverzut Barbieri 54b0b06c1e Better resize rotine, linear instead of double.
Increment in steps linearly instead of doubling them, otherwise it
will get to maximum limit of 4096 too soon.

Also replace the loop with simple math.



SVN revision: 46585
2010-02-27 16:41:24 +00:00
Gustavo Sverzut Barbieri 4d9ed8cb79 macro -> inline
clear, type checking and same runtime cost.



SVN revision: 46584
2010-02-27 15:38:58 +00:00
Gustavo Sverzut Barbieri 66ff799e5e Fix other EINA_PURE/EINA_CONST.
Some of them were working because they were inline, so the compiler
would know an just ignore the flag.

For lists and rbtree there is no problem as after each operation we
must change the pointer to the new head, thus the compiler will
consider it changed.



SVN revision: 46583
2010-02-27 15:17:15 +00:00
Carsten Haitzler d0551b44e4 eek - map event adjus gone wrong. fix!
SVN revision: 46581
2010-02-27 15:12:54 +00:00
Gustavo Sverzut Barbieri 8daa98f42e ouch, SPANK SPANK SPANK... me :-( wrong function attributes.
I forgot that EINA_CONST refer to the pointer itself, not to its
contents, as such the pointer did not changed, so gcc was optimizing
subsequent fetches of the value.

There should be another optimization to check for this... but then I
guess it's just c++



SVN revision: 46580
2010-02-27 14:51:52 +00:00
Carsten Haitzler 498dec5154 hmm fix resize before change alpha...
SVN revision: 46579
2010-02-27 14:40:10 +00:00
Carsten Haitzler da89f13454 yes yes yes!
SVN revision: 46578
2010-02-27 14:25:48 +00:00
Carsten Haitzler 8c14ff2e76 hmmmm oops. re-enable bgra support.
SVN revision: 46577
2010-02-27 10:34:19 +00:00
Carsten Haitzler 6559804d43 found booboo on non-bgra extended gl-es.
SVN revision: 46576
2010-02-27 10:31:17 +00:00
Carsten Haitzler b8955f3a50 neon back - found the bug! expedite!
SVN revision: 46572
2010-02-27 07:50:11 +00:00
Carsten Haitzler b62185b395 disabel neon blend for now.. i smell some trouble somewhere.
SVN revision: 46570
2010-02-27 07:29:16 +00:00
Gustavo Sverzut Barbieri f98c65afcc missing useful warnings for eina_str
SVN revision: 46549
2010-02-27 03:49:13 +00:00
Gustavo Sverzut Barbieri 19a99eecab Edje needs to detect files changed on disk before considering cache.
If file changed on disc (mtime), then make the reference dangling so
it is not reused anymore on subsequent open. If it is in cache, just
free it as it is not useful anymore.

This solves the following problem:


     edje_object_file_set(ed, path, group);
     ecore_file_cp(new_gen_file, path);
     edje_object_file_set(ed, path, group); /* still uses the old one! */


By: Bruno Dilly <bdilly@profusion.mobi>




SVN revision: 46548
2010-02-27 03:47:04 +00:00
Gustavo Sverzut Barbieri 08127ecc3e eina_str speedups.
* eina_str_split() now does the minimum number of passes and
   allocations. The first pass figures out the string size (strlen())
   and number of delimiters, so we can allocate the exact number of
   elements in array. The second repeats the loop copying elements to
   string and also setting them to the result array.

 * eina_str_split_full() is a variation of eina_str_split() that
   returns also the number of elements in array, in the case you need
   to pre-allocate another array to copy.

 * eina_strlen_bounded() is introduced to limit strlen() results, this
   is used in has_prefix and has_suffix, but possibly other use cases
   where string must be of a maximum size as we don't do useless
   iterations;



SVN revision: 46547
2010-02-27 03:42:27 +00:00
Gustavo Sverzut Barbieri b2816b08e9 ecore_txt is also a thin and picky wrapper around eina_str_convert()
this remove explicit dependency on iconv, so no checks are required
anymore.



SVN revision: 46546
2010-02-27 01:10:26 +00:00
Gustavo Sverzut Barbieri 064cea0516 be picky about ecore_data even during runtime.
let's try to remove ecore_data from code asap, so we can remove it
from svn as well.

If you need help ask mail list or #edevelop.



SVN revision: 46545
2010-02-27 01:01:03 +00:00
Gustavo Sverzut Barbieri 1f03f022fb be picky even during runtime, let's try to spot and remove these ASAP.
SVN revision: 46544
2010-02-27 00:56:36 +00:00
Gustavo Sverzut Barbieri f838e162b3 ecore_data is deprecated, flag everything as such.
those functions with drop-in replacement are just calls to the eina version.



SVN revision: 46543
2010-02-27 00:53:58 +00:00
Gustavo Sverzut Barbieri 9436429a09 follow vtorri's advice and mark txt and config as deprecated in the summary
SVN revision: 46542
2010-02-27 00:33:19 +00:00
Gustavo Sverzut Barbieri 456f222a0f [PATCH2/2] Improve edje documentation.
This reorder couple of functions so the generated documentation makes
sense.

By: Eduardo Felipe < eduardofelipe87@gmail.com>



SVN revision: 46541
2010-02-27 00:25:32 +00:00
Gustavo Sverzut Barbieri 46f0a73003 [PATCH1/2] Improve edje documentation.
This fixes the documentation, but they are still in the wrong order.

By: Eduardo Felipe <eduardofelipe87@gmail.com>


SVN revision: 46540
2010-02-27 00:15:41 +00:00
Gustavo Sverzut Barbieri e54bd066ec Convert everything to EINA_(TRUE|FALSE)
make it consistent.

By: Lucas de Marchi.



SVN revision: 46539
2010-02-27 00:01:10 +00:00
Gustavo Sverzut Barbieri 6e00c5f84a update docs to say EINA_(TRUE|FALSE)
By: Lucas De Marchi


SVN revision: 46538
2010-02-26 23:59:47 +00:00
Gustavo Sverzut Barbieri 2a204c684a find and replace too much!
SVN revision: 46535
2010-02-26 23:41:43 +00:00
Gustavo Sverzut Barbieri 9c3af651ba simplify and optimize parsing of percentage and float values.
Use strtod() and avoid couple of walks. Of course the walks were quite
small and it will not bring noticeable improvements, but code is
smaller and easier to read, so why not?



SVN revision: 46530
2010-02-26 22:51:07 +00:00
Gustavo Sverzut Barbieri 62301bc16d minor but easy speedups for tag processing.
keep tag and replacement size, compare it before doing strcmp() and
return the size so further calculations use it (eina_strbuf_append()
-> eina_strbuf_append_length())



SVN revision: 46529
2010-02-26 22:32:07 +00:00
Gustavo Sverzut Barbieri 3a11fbe02c use eina_strbuf faster variants whenever possible.
call me your bitch, call me your duplicated code, call me your complex code!



SVN revision: 46528
2010-02-26 22:03:25 +00:00
Gustavo Sverzut Barbieri 6769ba3b45 optimization attributes for functions.
SVN revision: 46523
2010-02-26 21:42:03 +00:00
Gustavo Sverzut Barbieri 7dfc83a627 add missing macro for prepend.
SVN revision: 46522
2010-02-26 21:34:28 +00:00
Gustavo Sverzut Barbieri bba70aef2e eina_strbuf_insert variants and fix leak with eina_strbuf_append_escaped()
SVN revision: 46521
2010-02-26 21:33:17 +00:00
Gustavo Sverzut Barbieri 3a8741c75e more docs for strbuf
SVN revision: 46518
2010-02-26 20:25:09 +00:00
Gustavo Sverzut Barbieri 2511972dde documentation improvements for eina_strbuf.
SVN revision: 46517
2010-02-26 20:23:12 +00:00
Gustavo Sverzut Barbieri f32672764d add eina_strbuf_append_length()
SVN revision: 46516
2010-02-26 20:09:36 +00:00
Christopher Michael a4571eb6bb Fix FALSE...should be EINA_FALSE.
SVN revision: 46504
2010-02-26 06:01:09 +00:00
Christopher Michael 300d53a4f4 Patch from Brian Wang to fix the TRUE/FALSE --> EINA_TRUE/EINA_FALSE mess.
(NB: Win32/CE people may need to fix some TRUE/FALSE parts...couldn't test
those).

Thanks Brian :)



SVN revision: 46503
2010-02-26 05:56:49 +00:00
Gustavo Sverzut Barbieri e3c9d3f62a TRUE/FALSE are gone, use EINA_TRUE/EINA_FALSE instead.
SVN revision: 46500
2010-02-26 00:59:11 +00:00
Gustavo Sverzut Barbieri ff6532a1bd minor documentation fixes.
still needs someone to read and review that.


SVN revision: 46499
2010-02-26 00:57:20 +00:00
Gustavo Sverzut Barbieri 926789e247 fix warnings.
SVN revision: 46498
2010-02-26 00:38:35 +00:00
Gustavo Sverzut Barbieri fc6c3ebb65 remove static/builtin modules warning, we ship with them on by default.
SVN revision: 46497
2010-02-26 00:30:01 +00:00
Gustavo Sverzut Barbieri 7c8ca04def Remove eina_error deprecated functions.
There were deprecated looooooooong ago, use eina_log if there are some
alien users out there.



SVN revision: 46496
2010-02-26 00:28:58 +00:00
Gustavo Sverzut Barbieri a98924ce6d turn off build of ecore-txt and ecore-config by default.
These are deprecated and will be killed in short time, stop using them!

Recommendations:

 * ecore-txt: use eina_str_convert, drop in replacement, just sed.

 * ecore-config: convert your code to use eet + Eet_Data_Descriptors
   directly, it is simpler and faster, but requires you to change your
   code. Consider using eet_data_descriptor_file_new() and
   eet_eina_file_data_descriptor_class_set() or
   EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(). Then describe your type
   with EET_DATA_DESCRIPTOR_ADD_*().




SVN revision: 46494
2010-02-26 00:20:34 +00:00
Gustavo Sverzut Barbieri e758e125f9 fix help string.
SVN revision: 46488
2010-02-25 21:26:32 +00:00
Gustavo Sverzut Barbieri 36bb64b0d0 maximum log level option.
this will have compilers to completely compile out log statements
using levels greater than the given number.

this is defined in config.h, thus C files should include this before
including Eina.h, as should be the case for all files (IOW: if it does
not work for some file, that file already have a bug).




SVN revision: 46482
2010-02-25 20:28:15 +00:00
Gustavo Sverzut Barbieri 6cd7135e5d couple of simple positive tests.
This is far from real unit testing, just simple cases are covered, but
it's better than nothing.



SVN revision: 46477
2010-02-25 19:38:32 +00:00
Cedric BAIL bb8ede02af * evas: Always redraw Textblock on style change.
SVN revision: 46469
2010-02-25 16:31:00 +00:00
Cedric BAIL 816974ff0b * ecore: Match what doc when disabling thread support in ecore.
SVN revision: 46467
2010-02-25 15:26:38 +00:00
Cedric BAIL 4d945f2c6a * evas: Remove duplicated code.
SVN revision: 46466
2010-02-25 15:10:05 +00:00
Carsten Haitzler 02d8dc445f why do a round trip for local info like.. root window # 0...
SVN revision: 46460
2010-02-25 12:26:25 +00:00
Carsten Haitzler b0045cb9b7 add lots of logging functions - for trackign x overhead when u cant get
symbols... booo! - disabled of course.



SVN revision: 46458
2010-02-25 12:19:02 +00:00
Vincent Torri a02b17d2f5 add unit tests framework with some examples.
pass --enable-tests to configure to enable them,
then 'make check' to run the tests.


SVN revision: 46456
2010-02-25 08:05:56 +00:00
Vincent Torri aab5142dd5 revert
SVN revision: 46455
2010-02-25 05:59:44 +00:00
Vincent Torri ca54f3d22b change option --enable-pthreads to --enable-threaded-rendering
change your scripts if needed


SVN revision: 46453
2010-02-25 05:39:30 +00:00
Christopher Michael 140de33a79 Fix some doxy typos.
SVN revision: 46450
2010-02-24 23:58:27 +00:00
Ulisses Furquim f316516b1c Checking init count before actually freeing ecore evases.
SVN revision: 46447
2010-02-24 22:48:55 +00:00
Gustavo Sverzut Barbieri 2d60db1c2b Fix fd_handlers when using recursive main loops.
If an fd_handler created a recursive main loop (just called
ecore_main_loop_begin()), then this recursive main loop should
continue to process fd_handlers from there and on, thus
fd_handler_current (and win32_handler_current) was added. When going
back from recursion, the current iterator should be updated properly.

This patch also fixes the deletion of fd_handler from recursive main
loops by reference counting them. This way, the node will not be
free()d inside inner loop cleanups and then crash when going back to
outer loop.

PS: win32 code is untested (or even compiled).

The following test case used to crash but not anymore:

#include <Ecore.h>
#include <Eina.h>
#include <unistd.h>

static int _log_dom;
#define INF(...) EINA_LOG_DOM_INFO(_log_dom, __VA_ARGS__)
#define ERR(...) EINA_LOG_DOM_ERR(_log_dom, __VA_ARGS__)

static Ecore_Fd_Handler *handle;
static int a[2], b[2];

static int cb2(void *data, Ecore_Fd_Handler *h)
{
    INF("cb2 - delete cb1 handle");
    ecore_main_fd_handler_del(handle);
    ecore_main_loop_quit(); /* quits inner main loop */
    return 0;
}

static int cb1(void *data, Ecore_Fd_Handler *h)
{
    unsigned char ch = 222;

    INF("cb1: begin");
    INF("    add cb2");
    ecore_main_fd_handler_add(b[0], ECORE_FD_READ, cb2, NULL, NULL, NULL);
    INF("    wake up pipe b");
    if (write(b[1], &ch, 1) != 1)
        ERR("could not write to pipe b");
    INF("    inner main loop begin (recurse)");
    ecore_main_loop_begin(); /* will it crash due
                              * ecore_main_fd_handler_del(handle)
                              * inside cb2()? It used to!
                              */
    INF("cb1: end");

    ecore_main_loop_quit(); /* quits outer main loop */

    return 0;
}

int main(void)
{
    unsigned char ch = 111;

    ecore_init();

    _log_dom = eina_log_domain_register("test", EINA_COLOR_CYAN);
    pipe(a);
    pipe(b);

    /*
     * Creating a new main loop from inside an fd_handler callback,
     * and inside this new (inner) main loop deleting the caller
     * callback used to crash since the handle would be effectively
     * free()d, but when the recursion is over the pointer would be
     * used.
     */

    INF("main: begin");
    handle = ecore_main_fd_handler_add
        (a[0], ECORE_FD_READ, cb1, NULL, NULL, NULL);
    INF("main: wake up pipe a");
    if (write(a[1], &ch, 1) != 1)
        ERR("could not write to pipe a");
    ecore_main_loop_begin();
    INF("main: end");
    return 0;
}



SVN revision: 46443
2010-02-24 20:59:44 +00:00
Vincent Torri 89594ec456 fix declaration of struct addrinfo
SVN revision: 46434
2010-02-24 17:52:54 +00:00
Vincent Torri 3c8d96125a use C (and not C++) pthread library on Windows
SVN revision: 46431
2010-02-24 15:43:32 +00:00
Cedric BAIL fc20b4541e * edje: Use fixed point for tween too.
SVN revision: 46429
2010-02-24 15:37:16 +00:00
Cedric BAIL 41b6529e00 * edje: Fix typo preventing creation of multiple edje box layout.
SVN revision: 46425
2010-02-24 14:50:07 +00:00
Carsten Haitzler 6ddefd5b4f -n - not -z!
SVN revision: 46424
2010-02-24 07:35:32 +00:00
Carsten Haitzler beb1b3820c oooh that was bad! oops. fix!
SVN revision: 46423
2010-02-24 05:47:23 +00:00
Carsten Haitzler eb650a7300 some roundtrips--
SVN revision: 46420
2010-02-24 04:36:22 +00:00
Gustavo Sverzut Barbieri 50d0af9d5e Fix events when using recursive main loops.
If an event handler/filter created a recursive main loop (just called
ecore_main_loop_begin()), then this recursive main loop should
continue to process events/handlers/filters from there and on, thus
event_current/event_filter_current/event_handler_current were
added. When going back from recursion, the current iterator should be
updated properly.

The following test case used to crash but not anymore:

#include <Ecore.h>
#include <Eina.h>

static int _log_dom;
#define INF(...) EINA_LOG_DOM_INFO(_log_dom, __VA_ARGS__)

static Ecore_Event_Handler *handle;

static int cb2(void *data, int type, void *event)
{
    INF("cb2 - delete cb1 handle");
    ecore_event_handler_del(handle);
    ecore_main_loop_quit(); /* quits inner main loop */
    return 0;
}

static int cb1(void *data, int type, void *event)
{
    Ecore_Event *e;

    INF("cb1: begin");
    INF("    add cb2");

    type = ecore_event_type_new();
    ecore_event_handler_add(type, cb2, NULL);
    e = ecore_event_add(type, NULL, NULL, NULL);
    INF("    add event to trigger cb2: event=%p", e);
    INF("    inner main loop begin (recurse)");
    ecore_main_loop_begin(); /* will it crash due
                              * ecore_event_handler_del(handle) inside
                              * cb2()? It used to!
                              */
    INF("cb1: end");

    ecore_main_loop_quit(); /* quits outer main loop */

    return 0;
}

int main(void)
{
    Ecore_Event *e;
    int type;

    ecore_init();

    _log_dom = eina_log_domain_register("test", EINA_COLOR_CYAN);

    /*
     * Creating a new main loop from inside an event callback, and inside
     * this new (inner) main loop deleting the caller callback used to
     * crash since the handle would be effectively free()d, but when the
     * recursion is over the pointer would be used.
     */

    type = ecore_event_type_new();

    INF("main: begin");
    handle = ecore_event_handler_add(type, cb1, NULL);
    e = ecore_event_add(type, NULL, NULL, NULL);
    INF("    add event to trigger cb1: event=%p", e);
    INF("    main loop begin");
    ecore_main_loop_begin();
    INF("main: end");
    return 0;
}




SVN revision: 46419
2010-02-24 02:30:27 +00:00
Gustavo Sverzut Barbieri b9c3b58561 events (also filters and handlers) now have reference counting.
Add reference counting to events, event filters and event handlers so
they can recurse main loops.

Note that the required "continuation" when entering main loops is not
there, thus recursion will restart and this will fail badly in lots of
cases. This should be fixed in future commits.



SVN revision: 46417
2010-02-24 01:16:00 +00:00
Gustavo Sverzut Barbieri 0bdbf9d147 rewrite ecore_timer internals to make it simpler and do better with
recursive main loops.

Unlike idlers, timers seems to work reasonably well with main loops, I
*think* they might fail since it used a boolean to flag running as
opposed to a reference count with incremental increments/decrements. I
could not write a test case to demonstrate so.

The now code should be simpler, particularly the
_ecore_timer_call(). It will also consider the previous position when
entering recursive main loops, preserving the order.

Deletion of timers are delegated to ecore_main.c, that was already
calling _ecore_timer_cleanup() after timers were executed.



SVN revision: 46416
2010-02-24 00:27:04 +00:00
Christopher Michael 34f6da920a Actually send the events wrt randr changes.
SVN revision: 46414
2010-02-23 23:32:30 +00:00
Gustavo Sverzut Barbieri 18b1bf46d7 move bitfield booleans to Eina_Bool.
using one bit with integers will just have room for 0 and -1, not 0 and 1.



SVN revision: 46412
2010-02-23 22:49:15 +00:00
Gustavo Sverzut Barbieri 0c24c76c5a Fix idle_exiters when using recursive main loops.
If an idle_exiter created a recursive main loop (just called
ecore_main_loop_begin()), then this recursive main loop should
continue to process idle_exiters from there and on, thus
idle_exiter_current was added. When going back from recursion, the
current iterator should be updated properly.

This patch also fixes the deletion of idle_exiters from recursive
main loops by reference counting them. This way, the node will not be
free()d inside inner loop cleanups and then crash when going back to
outer loop.

The following test case used to crash but not anymore:

#include <Ecore.h>
#include <Eina.h>

static int _log_dom;
#define INF(...) EINA_LOG_DOM_INFO(_log_dom, __VA_ARGS__)

static Ecore_Idle_Exiter *handle;

static int idler(void *data)
{
    INF("idler");
    return 1;
}

static int timer(void *data)
{
    INF("timer (exited idle!)");
    return 0;
}

static int exit_idle(void *data)
{
    INF("add request (timer) to exit idle");
    ecore_timer_add(0.0, timer, NULL);
    return 0;
}

static int cb2(void *data)
{
    INF("cb2 - delete cb1 handle");
    ecore_idle_exiter_del(handle);
    ecore_main_loop_quit(); /* quits inner main loop */
    return 0;
}

static int cb1(void *data)
{
    INF("cb1: begin");
    INF("    add cb2");
    ecore_idle_exiter_add(cb2, NULL);
    INF("    add exit idler");
    ecore_idler_add(exit_idle, NULL);
    INF("    inner main loop begin (recurse)");
    ecore_main_loop_begin(); /* will it crash due ecore_idle_exiter_del(handle)
                              * inside cb2()? It used to!
                              */
    INF("cb1: end");

    ecore_main_loop_quit(); /* quits outer main loop */

    return 0;
}

int main(void)
{
    ecore_init();

    _log_dom = eina_log_domain_register("test", EINA_COLOR_CYAN);

    /*
     * Creating a new main loop from inside an idle_exiter callback,
     * and inside this new (inner) main loop deleting the caller
     * callback used to crash since the handle would be effectively
     * free()d, but when the recursion is over the pointer would be
     * used.
     */

    INF("main: begin");
    handle = ecore_idle_exiter_add(cb1, NULL);
    ecore_idler_add(idler, NULL);
    ecore_idler_add(exit_idle, NULL);
    ecore_main_loop_begin();
    INF("main: end");
    return 0;
}



SVN revision: 46410
2010-02-23 22:25:35 +00:00
Gustavo Sverzut Barbieri 1c3348513a Fix idle_enterers when using recursive main loops.
If an idle_enterer created a recursive main loop (just called
ecore_main_loop_begin()), then this recursive main loop should
continue to process idle_enterers from there and on, thus
idle_enterer_current was added. When going back from recursion, the
current iterator should be updated properly.

This patch also fixes the deletion of idle_enterers from recursive
main loops by reference counting them. This way, the node will not be
free()d inside inner loop cleanups and then crash when going back to
outer loop.

The following test case used to crash but not anymore:

#include <Ecore.h>
#include <Eina.h>

static int _log_dom;
#define INF(...) EINA_LOG_DOM_INFO(_log_dom, __VA_ARGS__)

static Ecore_Idle_Enterer *handle;

static int idler(void *data)
{
    INF("idler");
    return 1;
}

static int cb2(void *data)
{
    INF("cb2 - delete cb1 handle");
    ecore_idle_enterer_del(handle);
    ecore_main_loop_quit(); /* quits inner main loop */
    return 0;
}

static int cb1(void *data)
{
    INF("cb1: begin");
    INF("    add cb2");
    ecore_idle_enterer_add(cb2, NULL);
    INF("    inner main loop begin (recurse)");
    ecore_main_loop_begin(); /* will it crash due ecore_idle_enterer_del(handle)
                              * inside cb2()? It used to!
                              */
    INF("cb1: end");

    ecore_main_loop_quit(); /* quits outer main loop */

    return 0;
}

int main(void)
{
    ecore_init();

    _log_dom = eina_log_domain_register("test", EINA_COLOR_CYAN);

    /*
     * Creating a new main loop from inside an idle_enterer callback,
     * and inside this new (inner) main loop deleting the caller
     * callback used to crash since the handle would be effectively
     * free()d, but when the recursion is over the pointer would be
     * used.
     */

    INF("main: begin");
    handle = ecore_idle_enterer_add(cb1, NULL);
    ecore_idler_add(idler, NULL);
    ecore_main_loop_begin();
    INF("main: end");
    return 0;
}




SVN revision: 46408
2010-02-23 22:13:42 +00:00
Gustavo Sverzut Barbieri 2bf063a77b Fix idlers when using recursive main loops.
If an idler created a recursive main loop (just called
ecore_main_loop_begin()), then this recursive main loop should
continue to process idlers from there and on, thus idler_current was
added. When going back from recursion, the current iterator should be
updated properly.

This patch also fixes the deletion of idlers from recursive main loops
by reference counting them. This way, the node will not be free()d
inside inner loop cleanups and then crash when going back to outer
loop.

The following test case used to crash but not anymore:


#include <Ecore.h>
#include <Eina.h>

static int _log_dom;
#define INF(...) EINA_LOG_DOM_INFO(_log_dom, __VA_ARGS__)

static Ecore_Idler *handle;

static int idler(void *data)
{
    INF("idler");
    return 1;
}

static int cb2(void *data)
{
    INF("cb2 - delete cb1 handle");
    ecore_idler_del(handle);
    ecore_main_loop_quit(); /* quits inner main loop */
    return 0;
}

static int cb1(void *data)
{
    INF("cb1: begin");
    INF("    add cb2");
    ecore_idler_add(cb2, NULL);
    INF("    inner main loop begin (recurse)");
    ecore_main_loop_begin(); /* will it crash due ecore_idler_del(handle)
                              * inside cb2()? It used to!
                              */
    INF("cb1: end");

    ecore_main_loop_quit(); /* quits outer main loop */

    return 0;
}

int main(void)
{
    ecore_init();

    _log_dom = eina_log_domain_register("test", EINA_COLOR_CYAN);

    /*
     * Creating a new main loop from inside an idler callback, and inside
     * this new (inner) main loop deleting the caller callback used to
     * crash since the handle would be effectively free()d, but when the
     * recursion is over the pointer would be used.
     */

    INF("main: begin");
    handle = ecore_idler_add(cb1, NULL);
    ecore_idler_add(idler, NULL);
    ecore_main_loop_begin();
    INF("main: end");
    return 0;
}



SVN revision: 46406
2010-02-23 21:27:04 +00:00
Gustavo Sverzut Barbieri dbc4a40265 Fix the bug of the first timer being added from idler.
We should start doing unit-test for ecore, accumulating these
problems. Follows the test case:

#include <Ecore.h>
#include <Eina.h>

static int _log_dom;
#define INF(...) EINA_LOG_DOM_INFO(_log_dom, __VA_ARGS__)

static int quiter(void *data)
{
    INF("quit!");
    ecore_main_loop_quit();
    return 1;
}

static int idler(void *data)
{
    INF("idler");
    return 1;
}

static int cb1(void *data)
{
    INF("cb1");
    ecore_timer_add(0.0, quiter, NULL);

    return 0;
}

int main(void)
{
    ecore_init();

    _log_dom = eina_log_domain_register("test", EINA_COLOR_CYAN);

    /*
     * Create a main loop with just idlers, there is a special case
     * for just idlers without timers in ecore.
     *
     * From idler, add a timer that quits the application. It should
     * always quit.
     *
     * If it does not quit, then there is a bug of new timers not
     * being immediately detected and system never exits idle.
     */

    INF("main: begin");
    ecore_idler_add(cb1, NULL);
    ecore_idler_add(idler, NULL);
    ecore_main_loop_begin();
    INF("main: end");
    return 0;
}




SVN revision: 46405
2010-02-23 21:04:38 +00:00
Christopher Michael fd7ed8786c Add atoms/functions for keyboard geometry. This will be used w/ conformant
apps to notify them of keyboard changes so they can move widgets around,
etc, etc.



SVN revision: 46402
2010-02-23 20:53:34 +00:00
Cedric BAIL 3eaea2b9fa * edje: Fix naming for amalgamation and make static functions
that should.


SVN revision: 46394
2010-02-23 15:55:04 +00:00
Cedric BAIL 51de26862a * edje: Add more focus event in edje. A start for a focus layout work.
SVN revision: 46389
2010-02-23 13:39:19 +00:00
Cedric BAIL 7fcbff0e0e * evas: Bring back Font Kerning cache as it does improve performance
by a good margin on my 4 targets (SGX-530, Tango2, NVidia G73).



SVN revision: 46388
2010-02-23 13:31:10 +00:00
Vincent Torri 366c893967 never use macro defined by configure in an exported header
SVN revision: 46387
2010-02-23 13:11:54 +00:00
Carsten Haitzler 79b6821f90 fix moving edje obj aroudn with maps in it.
SVN revision: 46385
2010-02-23 08:37:30 +00:00
Carsten Haitzler 1ddbe5c5b1 ahhh and if parts are images.. use the right uv coords.
SVN revision: 46384
2010-02-23 07:56:59 +00:00
Carsten Haitzler a952803f13 aaaah missing map smooth and alpha flags.
SVN revision: 46383
2010-02-23 05:45:24 +00:00
Gustavo Sverzut Barbieri 10b90e46c6 fix my coding style errors...
SVN revision: 46362
2010-02-22 20:09:44 +00:00
Gustavo Sverzut Barbieri 054da5beeb fix ecore-glib reentrance
if using ecore_main_loop_begin() multiple times (reentrant/recursive)
with glib doing threads, then it would deadlock since the same thread
would get the lock it already have.

multiple ecore_main_loop_begin() is required to implement WebKit's
alert/confirm/prompt dialogs since there is no async reply with
callbacks, rather one must return the value.

By: Lucas de Marchi



SVN revision: 46361
2010-02-22 20:09:03 +00:00
Christopher Michael 618fe20c58 Readd zone_list functions and atoms. (Needed for some elm apps like
elm_indicator & elm_softkey).



SVN revision: 46357
2010-02-22 17:12:24 +00:00
Marc Andre Tanner 5b4ed37b9c From: Marc Andre Tanner <mat@brain-dump.org>
Subject: [E-devel] [PATCH] evas: compile out unused dither tables

Don't include the rather large dither tables if small dithering code
is enabled during ./configure stage.



SVN revision: 46353
2010-02-22 08:12:49 +00:00
Carsten Haitzler 59da209fb5 even tho its going to be killed... fix it anyway.
SVN revision: 46352
2010-02-22 08:08:04 +00:00
Rui Seabra c8908d3ed4 Adjust for ver-pre-svn support
Add two missing files.


SVN revision: 46348
2010-02-21 18:40:56 +00:00
Carsten Haitzler 9dcca83a08 fix alpha set/unset on image obj in gl engine.
SVN revision: 46344
2010-02-21 15:49:44 +00:00
Carsten Haitzler 3243fb1170 add embryo to manipulate map stuff.
SVN revision: 46343
2010-02-21 10:55:45 +00:00
Carsten Haitzler ea37c003f3 docs++
SVN revision: 46342
2010-02-21 09:39:58 +00:00
Carsten Haitzler e89c590b0d add border_scale option for images - image border will scale based on edje
scale factors. this is independant of scale: per part.



SVN revision: 46341
2010-02-21 06:53:44 +00:00
Carsten Haitzler a4b6192e7f border_scale ... possible++
SVN revision: 46340
2010-02-21 06:21:15 +00:00
Vincent Torri 4d11d31e3d * instead of including headers wrt to the OS, include them if
they are available
 * compilation on Windows XP minimum only

SVN revision: 46338
2010-02-20 19:12:52 +00:00
Vincent Torri 3499767ddb First steps towards the Windows port of ecore_con.
ecore_con_dns will be hard to port (fork+exec).

SVN revision: 46337
2010-02-20 18:01:50 +00:00
Vincent Torri f9f9b48c64 On Windows, ecore_exe_auto_limits_set() does nothing
SVN revision: 46331
2010-02-20 09:35:48 +00:00
Vincent Torri 5254d1a02e Windows: Add priority support when a child process is created
and add documentation for that.

SVN revision: 46330
2010-02-20 09:20:04 +00:00
Carsten Haitzler 64a129f1fa stderr for that output! one day it will go - but for now, it stays.
SVN revision: 46329
2010-02-20 05:36:45 +00:00
Carsten Haitzler e1f2ad1f76 and merge some delcaration lines for compactness
SVN revision: 46328
2010-02-20 04:49:03 +00:00
Carsten Haitzler c26d5bc2bc simplify shaders to have fewer tmp vars. in case of dumb shader compilers.
SVN revision: 46327
2010-02-20 04:37:22 +00:00
Vincent Torri 7e08e3f23c improvements of the stderr and stdout redirections. There are
still lots of work to be done:

 * allow several redirections (only one for now...)
 * fix stdin redirection
 * fill empty functions

SVN revision: 46319
2010-02-19 19:23:47 +00:00
Cedric BAIL d590d0dbb0 * edje: Fix a warning.
Please review as I am not sure why this code was written as the beginning.


SVN revision: 46318
2010-02-19 18:43:08 +00:00
Cedric BAIL e4ee012951 * edje: Change filter_state to filter and give the possibility to
filter from another part than the event source.



SVN revision: 46316
2010-02-19 18:30:46 +00:00
Vincent Torri 298da926f1 check OpenGL version:
* OpenGL ES : 2.0
 * OpenGL desktop : >= 1.4

If OpenGL ES 3.* is out, this code must be fixed

If there are problems with the minimal version on desktop,
we will have to increase the minimal version.

Question: should we check GLSL version on desktop ?


SVN revision: 46309
2010-02-19 14:33:49 +00:00
Vincent Torri 2e004582d7 add mempool description in the doc
SVN revision: 46307
2010-02-19 13:42:34 +00:00
Carsten Haitzler e70759878c rfiddling wiht lop to try and get rid of pauses. i think i found it... plus a
bit of streamlining. need to test more widely now.



SVN revision: 46303
2010-02-19 08:00:44 +00:00
Carsten Haitzler e2bc27fb44 interp properly and make perspective api work.. untested yet...
SVN revision: 46302
2010-02-19 06:28:03 +00:00
Christopher Michael 04b865cdce Ecore_X changes for new illume2 code.
NB: This will break current PROTO/elm_* apps for illume2. They will be fixed
up shortly.



SVN revision: 46284
2010-02-19 02:27:18 +00:00
Iván Briano 0b816d85e6 Forgot to copy image id
SVN revision: 46273
2010-02-18 14:05:58 +00:00
Carsten Haitzler 1244978ecd disable error gets - minor impact to keep getting errors - but stil an impact
if we dont need to know what they are.



SVN revision: 46270
2010-02-18 08:54:24 +00:00
Carsten Haitzler 0fecb5ede7 and fix some over-zealous optimising.
SVN revision: 46269
2010-02-18 08:51:00 +00:00
Carsten Haitzler 136316d6ce more shaders... for more speeeeeeds!
SVN revision: 46268
2010-02-18 08:36:07 +00:00
Carsten Haitzler 25f169fc21 dont need these with shaders.
SVN revision: 46267
2010-02-18 07:21:17 +00:00
Carsten Haitzler c7695857f7 lots more shaders!
SVN revision: 46266
2010-02-18 07:10:28 +00:00
Gustavo Sverzut Barbieri 5777eee064 do not access NULL image data for native surfaces.
This fixes another segv that happens when using composite manager.


SVN revision: 46265
2010-02-18 02:51:27 +00:00
Gustavo Sverzut Barbieri 1ad4337878 proper shutdown of entries.
* must disconnect connected callbacks, particularly those to
   canvas. The object we previously connect will die anyway, but
   canvas continues alive, dispatching its
   EVAS_CALLBACK_CANVAS_FOCUS_IN and EVAS_CALLBACK_CANVAS_FOCUS_OUT,
   causing nasty segmentation faults!

 * must call _edje_clean_objects() *AFTER* the entry is shut
   down. Otherwise ed->evas will be NULL and
   evas_event_callback_del_full() will fail. I left extra checks on
   those, since this call will return the given data (in our case
   "ed") and NULL when callback connection was not found.

 * flag existence of entries and if they were already initalized and
   shutdown before, avoid redoing such work.

This fixes a stupid crash that bugged editje for a while now.



SVN revision: 46263
2010-02-17 23:43:31 +00:00
Vincent Torri a50bb3acf8 m4 quoting
SVN revision: 46258
2010-02-17 19:50:19 +00:00
Cedric BAIL ed5adb020f * evas: Sync DirectFB engine with last Evas engine API.
Note: More test are needed, but basically, you have map running with DirectFB. Enjoy !


SVN revision: 46249
2010-02-17 17:24:27 +00:00
Cedric BAIL 17653e550c * evas: Fix SDL map usage (raster edje map test is working :-) ).
SVN revision: 46247
2010-02-17 15:22:58 +00:00
Cedric BAIL 06f7da42f9 * edje: Fix fixed point use in map.
Note: ep->description_pos is a FLOAT_T.


SVN revision: 46245
2010-02-17 13:21:50 +00:00
Carsten Haitzler 698f67609c aaaah bummer. (see comment)
SVN revision: 46243
2010-02-17 08:13:30 +00:00
Carsten Haitzler ac2f03b865 fix small potnential bug in map rendering.
SVN revision: 46242
2010-02-17 08:05:19 +00:00
Carsten Haitzler 0a373f4d19 done need egl errors there.
SVN revision: 46241
2010-02-17 07:34:22 +00:00
Carsten Haitzler fcf092e6d7 get ansio ext + max val.
SVN revision: 46240
2010-02-17 07:26:44 +00:00
Carsten Haitzler 6b42415c3b fix err output.
SVN revision: 46239
2010-02-17 06:27:22 +00:00
Carsten Haitzler ce8b3c77ab and put those back too.
SVN revision: 46237
2010-02-17 05:05:56 +00:00
Carsten Haitzler 6a5d12bd2a keep building ecore_txt for now - breaks packaging and more with no warning.
SVN revision: 46236
2010-02-17 05:02:40 +00:00
Carsten Haitzler 6de08e07fa fix maps with alpha.. sorry about that!
SVN revision: 46235
2010-02-17 04:48:53 +00:00
Carsten Haitzler c474d55267 oops fix erro check.
SVN revision: 46234
2010-02-17 04:30:58 +00:00
Carsten Haitzler dc8fdf5e3a lots of gl error catching.. if gl errors happen.
it's a #defined macro so it can be removed.
 


SVN revision: 46233
2010-02-17 04:21:59 +00:00
Carsten Haitzler 0be05b9046 be less pedantic on fglrx.
SVN revision: 46229
2010-02-17 02:11:47 +00:00
Carsten Haitzler c13819b98a hmmmm try this. let me know if u see issues.
SVN revision: 46218
2010-02-16 16:52:02 +00:00
Carsten Haitzler 3c71b10522 add back face cull option.
SVN revision: 46217
2010-02-16 16:36:16 +00:00
Carsten Haitzler bf293931a1 map support in edje - first cut, missing features like back-face culling.
also no dependency tracking etc. etc.



SVN revision: 46216
2010-02-16 16:20:15 +00:00
Gustavo Sverzut Barbieri 21d95ade17 typedefs in events, makes life easier for bindings and pointer references.
SVN revision: 46211
2010-02-16 15:37:53 +00:00
Iván Briano 4419ccc84d Move to new canvas callbacks signature
SVN revision: 46210
2010-02-16 13:43:44 +00:00
Vincent Torri 5c2f696d25 ecore_x does not use ecore_txt functions anymore, so remove the
dependency on ecore_txt. I disable ecore_txt by default too

I can't test it (i'm on Windows). If you experience errors during
the build, please reply in this thread.

SVN revision: 46209
2010-02-16 13:14:07 +00:00
Gustavo Sverzut Barbieri 11ca6cc505 Update to new event callback signature.
SVN revision: 46207
2010-02-16 13:00:11 +00:00
Gustavo Sverzut Barbieri e133d2f300 API break: proper Canvas events callback.
Canvas was (ab)using the same callback signature as Objects, so you
always got a confusing NULL parameter.

Just clean it up to be Evas_Object_Event_Cb and Evas_Event_Cb, each
with its own signature.



SVN revision: 46206
2010-02-16 12:59:37 +00:00
Carsten Haitzler 4e51efd326 1. if software-x11 not enabled.. still build... but.....
2. ecore-txt is a REQUIREMENT FOR ECORE-X! DONT DISABLE!



SVN revision: 46199
2010-02-16 01:27:25 +00:00
Vincent Torri 741e62ab96 Make ecore_data enabled or disabled with configure.
This will help me for the opensolaris port... (btw
inlined functions should not be in ecore_list source
code but in its header, for those who want to fix that)


SVN revision: 46195
2010-02-15 20:29:38 +00:00
Sebastian Dransfeld 37f75a7ef1 Disable ecore_txt by default
SVN revision: 46194
2010-02-15 19:55:46 +00:00
Vincent Torri d2993b9b25 don't link ecore_txt against eina
SVN revision: 46193
2010-02-15 19:54:59 +00:00
Christopher Michael 82ce1b5e7b Reorganize code a little here to remove duplication. No function changes
(and no issues found when tested).



SVN revision: 46184
2010-02-15 07:23:58 +00:00
Carsten Haitzler 04ca0cb31e fix freeze/thaw to use less ... cpu.
SVN revision: 46181
2010-02-15 06:40:58 +00:00
Carsten Haitzler 830a7c89ee be more robust when gtl creation fails - return a null ee.
SVN revision: 46178
2010-02-15 05:26:42 +00:00
Carsten Haitzler 440f6d0d7b change gl engine api a little - fixed in ecore-evas and expedite. expose
indirect option in ecore-evas with a new opt param for gl engines - will add
more opts over time.



SVN revision: 46177
2010-02-15 05:05:05 +00:00
Carsten Haitzler b933154d21 add checks for vendor etc. too
SVN revision: 46176
2010-02-15 04:12:50 +00:00
Sebastian Dransfeld 7c1420c73b Use MAP_FAILED constant
SVN revision: 46174
2010-02-14 21:22:06 +00:00
Sebastian Dransfeld 0b3bea06ec Include safety checks before function include
SVN revision: 46169
2010-02-14 19:01:51 +00:00
Carsten Haitzler c2431a688d and be paranoid if context createion fials - try again with other direct
options



SVN revision: 46168
2010-02-14 15:15:28 +00:00
Carsten Haitzler cee4d504cf add indirect engine option - and do glsym for glxcreatepixmap and friends.
SVN revision: 46167
2010-02-14 15:12:39 +00:00
Carsten Haitzler 302e9054c4 dont return unknown!
SVN revision: 46162
2010-02-14 08:15:49 +00:00
Sebastian Dransfeld 7ae4c793e7 safety checks
SVN revision: 46155
2010-02-13 19:26:34 +00:00
Sebastian Dransfeld 5c49be6e01 Add const where we don't modify pointer
SVN revision: 46153
2010-02-13 19:06:16 +00:00
Sebastian Dransfeld d7b706e4f6 Add eina unlikely to alloc errors
SVN revision: 46152
2010-02-13 18:55:47 +00:00
Gustavo Sverzut Barbieri 101ddb5c97 evas: help bindings.
* EVAS_CALLBACK_LAST as sentinel to detect number of events changed.

 * Evas_Event_Cb typedef.



SVN revision: 46144
2010-02-13 15:52:51 +00:00
Carsten Haitzler 7e5b054289 little shim - disabled, but can be used in future to hunt down round-trips.
SVN revision: 46139
2010-02-13 13:32:21 +00:00
Gustavo Sverzut Barbieri 23f96d5d33 All packages should have README...
SVN revision: 46138
2010-02-13 13:28:32 +00:00
Vincent Torri b87e1d6fae * -fno-strict-aliasing is checked at linked time (to make sure
that it is disabled for suncc)
 * add old evas data types in tests. Tell me if you encounter problems
   with them


SVN revision: 46136
2010-02-13 12:32:22 +00:00
Vincent Torri 0a87819b44 apply raster's changes to the xcb engine
SVN revision: 46134
2010-02-13 12:28:08 +00:00
Carsten Haitzler df7f6cdaa7 dont need that xsync.
SVN revision: 46127
2010-02-13 11:37:57 +00:00
Carsten Haitzler 6abac56d9d dont need these 2 syncs.
SVN revision: 46126
2010-02-13 11:37:34 +00:00
Michael Jennings bc32b334d5 Add spec file support for software-16 engine.
SVN revision: 46125
2010-02-13 07:22:11 +00:00
Vincent Torri 5f5973c6c2 * src/lib/evil_unistd.c:
fix gettimeofday(). Thanks to Mathieu SCHROETER,
	from the GeexBox project, for having spotted this.



SVN revision: 46116
2010-02-12 16:03:08 +00:00
Iván Briano 071969c41f Use length of source string to copy.
SVN revision: 46114
2010-02-12 14:58:00 +00:00
Gustavo Lima Chaves 50c346b37a The former test was giving false positives.
SVN revision: 46113
2010-02-12 14:00:31 +00:00
Vincent Torri b9ca64f7a5 formatting
SVN revision: 46110
2010-02-12 08:09:03 +00:00
Vincent Torri 4b5ea14fbb formatting
SVN revision: 46109
2010-02-12 07:32:11 +00:00
Vincent Torri 1213602ae5 constants should be unsigned
SVN revision: 46108
2010-02-12 07:27:27 +00:00
Sebastian Dransfeld 852f9e8ac5 We always need to null terminate
SVN revision: 46107
2010-02-12 06:33:31 +00:00
이상진 7c9103f3ae From: 이상진 <lsj119@samsung.com>
I am attaching another patches for transparent window.

1. Use RGB Visual.
2. Set destination_alpha in ecore_evas for alpha composite in evas.
3. add Function
   - Ecore_Evas_Engine_Func->fn_transparent_set
   - ecore_evas_transparent_set , ecore_evas_transparent_get
   - elm_win_transparent_set, elm_win_transparent_get




SVN revision: 46106
2010-02-12 05:31:26 +00:00
Sebastian Dransfeld fb8d1dc110 Since we know we have enough space, use memcpy
SVN revision: 46103
2010-02-11 22:00:02 +00:00
Sebastian Dransfeld f70c4ebe1f And only log when debug
SVN revision: 46102
2010-02-11 21:56:31 +00:00
Sebastian Dransfeld 9df3524f3a Good coverage for strbuf
SVN revision: 46101
2010-02-11 21:53:00 +00:00
Sebastian Dransfeld 8f5d0ecfb4 Don't timeout
SVN revision: 46099
2010-02-11 21:30:57 +00:00
Sebastian Dransfeld e699b67248 Only test built mempools
SVN revision: 46096
2010-02-11 21:21:22 +00:00
Sebastian Dransfeld a28ba1876e More tests for strbuf
SVN revision: 46095
2010-02-11 21:21:12 +00:00
Sebastian Dransfeld b2fbe0f2b2 Use eina_log
SVN revision: 46094
2010-02-11 21:20:52 +00:00
Luis Felipe Strano Moraes c33a7982ed fix build of ethumbd client.
SVN revision: 46093
2010-02-11 21:05:31 +00:00
Sebastian Dransfeld 0ed3fb726b Tests for strbuf
SVN revision: 46089
2010-02-11 20:08:52 +00:00
Vincent Torri b49d61f502 missing "
SVN revision: 46087
2010-02-11 18:54:04 +00:00
Gustavo Sverzut Barbieri 9cce47d3b8 let's not return NULL but a more useful result.
SVN revision: 46086
2010-02-11 18:49:12 +00:00
Vincent Torri ed57ba09ed no arithmetic pointer on void *
SVN revision: 46085
2010-02-11 18:47:11 +00:00
Christopher Michael e9bc23874c Fix typo in doc.
SVN revision: 46083
2010-02-11 17:38:24 +00:00
Vincent Torri c3ec1a38f7 useless semi-colon
SVN revision: 46080
2010-02-11 15:32:29 +00:00