On Sat, Aug 15, 2009 at 5:55 PM, Andre Dieb<[email protected]> wrote:
> Changes:
>
> Module name is now eina_log (but I didn't delete eina_error yet, as we
> should delete it only when the transition is completed)
> Docs on header and basic doc on .c file, but there's a lot of room for doc
> improvement
> Save name on domains
> Clean realloc code
> Keep parsing EINA_LOG_LEVELS even when user types wrong (e.g.
> domain1:level1,domain2:,domain3,domain:5)
> Migrate old global logger code to global logger (i.e. remove old deprecated
> functions)
arghhhhhh... HTML MAIL!
now to the points
- _DOM is not a suffix, rather a prefix namespace... like
EINA_LOG_ERR and EINA_LOG_DOM_ERR...
- I remember Sun compiler barfing at ##__VA_ARGS__, maybe we need to
avoid that? Vincent?? (avoid that is define just as (...) and user is
obligated to give at least one parameter, fmt. That makes things
uglier IMHO)
- _Eina_Log_Level define a value < 0 (EINA_LOG_LEVEL_MIN =
INT32_MIN) so compilers don't optimize that enum as an unsigned
integer, causing problems for users trying to specify something like
-1 for "more critical"
- +typedef int Eina_Log; "too much", I'd use it as integer, no need
to typedef.
- keep these as "eina_error", you're fixing error->log, but having
error codes as log codes is too much, like broking and not fixing =)
This holds true for eina_log_msg_register and friends...
+/**
+ * @var EINA_LOG_OUT_OF_MEMORY
+ * Log identifier corresponding to a lack of memory.
+ */
+EAPI extern Eina_Log EINA_LOG_MSG_OUT_OF_MEMORY;
- colors should be improved, for example (even the old code is not good)
+static const char *_colors[EINA_LOG_LEVELS] = {
+ EINA_COLOR_YELLOW, // EINA_LOG_LEVEL_CRITICAL
+ EINA_COLOR_RED, // EINA_LOG_LEVEL_ERR
+ EINA_COLOR_YELLOW, // EINA_LOG_LEVEL_WARN
+ EINA_COLOR_NOTHING, // EINA_LOG_LEVEL_INFO
+ EINA_COLOR_GREEN, // EINA_LOG_LEVEL_DBG
+};
for me, the more "red", more dangerous... more "green" better... So I
usually use as rule in my debugs:
- light (\033[1m) red = critical
- regular (dark) red = error
- yellow = warning
- green = info
- light blue = debug
- regular blue = more than debug
things I told you in previous mails:
- trailing whitespaces!!!
- have you tested the parse of broken EINA_LOG_LEVELS? Note this
+ level = strtol((char *)(end + 1), &tmp, 10);
+ if (tmp == (end + 1)) continue;
you do not change start, what happens? infinite loops... you need to
have start = next pair, so need to search for "," and update start to
that.... or add an "end" label right after appending to pending list
and "goto end" instead of continue.
- eina_log_shutdown() should ignore already deleted entries.
- eina_log_domain_register() should not free domains, they should be
freed in eina_log_domain_unregister()
--
Gustavo Sverzut Barbieri
http://profusion.mobi embedded systems
--------------------------------------
MSN: [email protected]
Skype: gsbarbieri
Mobile: +55 (19) 9225-2202
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel