Re: [E-devel] Improving Elementary for the release
On 08/11/11 03:20, SANJEEV BA wrote: -- Insightful. -- Tom. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] [Patch] eina_array small patch
Dear All. I found a bug in eina_array_remove function. If array-data is NULL, eina_array_remove will be crashed. I added handling code in eina_array_remove. Please review this small patch. Thanks. eina_array.patch Description: Binary data -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Ethumb
On Mon, 7 Nov 2011 16:17:48 +0100 Cedric BAIL cedric.b...@free.fr said: On Mon, Nov 7, 2011 at 4:05 PM, Gustavo Sverzut Barbieri barbi...@profusion.mobi wrote: Post 1.1 but before elm? Actually I'm more worried with elm. It will be the biggest user and want a release that works wit it I want to push eio, ethumb and emotion to be released together with elementary. After all they are actual dependencies (optional) for elementary. The todo is very minimal for each of them, eio need some more backend for the monitor API, ethumb need the API change, we already discussed and emotion, well I have nothing that prevent a release of it right now. So I am pretty confident that we could push all this 4 libraries together at the same time. i think this is a sensible move. core efl is enough work without throwing in these extras - we can stage these as a stage 2 along with elm. On Monday, November 7, 2011, Cedric BAIL cedric.b...@free.fr wrote: On Mon, Nov 7, 2011 at 3:50 PM, Gustavo Sverzut Barbieri barbi...@profusion.mobi wrote: Cedric, Will you have time to fix ethumb for EFL 1.1 timeframe? If no then i'll remove the async patches and release ethumb as 1.0 using the old API, changing elm as well. It's better to have bit slow API that is correct than the current one, also bindings will be possible. Etc. Clearly not. It's on my todo, but for post 1.1 as it is not a priority since it isn't in the released libraries. I have no problem if you want to rollback, but I may need to break the API/ABI of ethumb later. I want to split computation of the md5 from the call to stat. -- Cedric BAIL -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Cedric BAIL -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: cedric trunk/e_dbus/src/lib/hal
On Tue, Nov 8, 2011 at 3:39 AM, Mike Blumenkrantz m...@zentific.com wrote: On Sun, 6 Nov 2011 02:21:57 -0800 Enlightenment SVN no-re...@enlightenment.org wrote: Log: e_dbus: e_hal use some e_ukit function so we should init it. Author: cedric Date: 2011-11-06 02:21:57 -0800 (Sun, 06 Nov 2011) New Revision: 64809 Trac: http://trac.enlightenment.org/e/changeset/64809 Modified: trunk/e_dbus/src/lib/hal/Makefile.am trunk/e_dbus/src/lib/hal/e_hal_main.c no. just...no. You could have fixed it correctly instead. Now we are using function in hal from ukit without initilizing it. The problem are with people that do compile with -no-undefine or disable ukit. By reverting, you don't solve anything. -- Cedric BAIL -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: cedric trunk/e_dbus/src/lib/hal
On Tue, Nov 8, 2011 at 10:03, Cedric BAIL cedric.b...@free.fr wrote: On Tue, Nov 8, 2011 at 3:39 AM, Mike Blumenkrantz m...@zentific.com wrote: On Sun, 6 Nov 2011 02:21:57 -0800 Enlightenment SVN no-re...@enlightenment.org wrote: Log: e_dbus: e_hal use some e_ukit function so we should init it. Author: cedric Date: 2011-11-06 02:21:57 -0800 (Sun, 06 Nov 2011) New Revision: 64809 Trac: http://trac.enlightenment.org/e/changeset/64809 Modified: trunk/e_dbus/src/lib/hal/Makefile.am trunk/e_dbus/src/lib/hal/e_hal_main.c no. just...no. You could have fixed it correctly instead. Now we are using function in hal from ukit without initilizing it. The problem are with people that do compile with -no-undefine or disable ukit. By reverting, you don't solve anything. -- Cedric BAIL Btw, HAL is used (and fixed) on BSDs. -- Boris Faure -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Improving Elementary for the release
On Mon, 7 Nov 2011 14:12:42 +0100 Cedric BAIL cedric.b...@free.fr said: Hi all, We are going to try releasing Elementary soon after the release of the EFL 1.1. I would like to start a discussion now on what should be done to prepare Elementary for a release. I have been doing a quick overview of Elementary.h. The first problem is that we have a lot of structure in it that should be allocated by the application and they don't have any information about version or size, so we will not be able to touch them after the release anymore. That's bad, I think we need to fix that by adding function that will do the allocation and zero the memory before giving the pointer to the app. yes - genlist (grid) - Elm_Gen_Item_Class, Elm_Genlist_Item_Class and Elm_Gengrid_Item_Class is mostly the culprit. we need to alloc this in elm so then elm knows its the right struct size for the version of elm running. the app knows how many members are there based on elm version so it can avoid using members if version when they were introduced. Elm_Entry_Filter_Limit_Size maybe is a candidate - but i don't think it ever needs changing, and if it did we'de provide a different callback to set other than elm_entry_filter_limit_size() Elm_Entry_Filter_Accept_Set i think is ok for the same reason as above. Elm_Web_Menu looks like it needs an allocation call from elm as well as Elm_Web_Menu_Item what's Elm_Web_Download for? it's not used anywhere? Elm_Slideshow_Item_Class is another culprit like gen*. Elm_Store_* stuff is... well interesting. i don't think this needs versioning as the mapping stuff can be extended by adding more enums for new mapping modes. we covered basic types and then extension via custom cb. so we're good here i think. the item info is alloced by elm and passed to app so thats ok. so summary: need allocators and freers, add ref count number (so genlist/grid/whatever while USING the item can keep it around if items referring to the class are around still even if app freed it): Elm_Gen_Item_Class Elm_Genlist_Item_Class Elm_Gengrid_Item_Class Elm_Web_Menu Elm_Web_Menu_Item Elm_Slideshow_Item_Class removal: Elm_Web_Download (n.b. i am basing only a need for an allocator on the assumption that if elm allocs and the struct gets bigger in future, new fields will be properly 0'd out and 0 will mean don't use or change behavior if old app doesn't touch new entires, and apps that want to handle older elm's can use elm version to know what members may not be there in older structs). The second point is about both gengrid and genlist. I would like to add a few new callback : - content_set/content_unset: when set, content_get will return an object, but it will be reused and it's real content will be set and unset later. This permit the implementation of some cache mechanisme directly inside elm_gen. - label_free: if set, it will be able to override the call to free. This could help, I have found many times that I am using stringshare or static string that really don't need to be strdup. Btw I don't like the name of that callback This second list of change should not break API/ABI once the first change are done. So not a big hurry, but they are simple to do and should help provide better performance. Of course I don't plan to play with this until the EFL 1.1 are out, so you have time for comment. I put here only the thing I want to do and how I plan to fix them. If you have some idea of what need to be fixed in Elementary before the release and how you want to do it, maybe answering to this thread will be a good idea. Have fun, -- Cedric BAIL -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] svn account access kill list
On Fri, 28 Oct 2011 15:43:00 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com said: ok - lfelipe begged for mercy, so his life shall be spared... THIS TIME! :) kill list is: 3v1n0 adam cmarcelo cobra dieb dottedmag emfox helen horms jethomas josch kaethorn kiwi lmunch lucho manowarrior mcalamelli morphis ningerso otaviobp pfritz rbelem rfonseca semernin sevcsik term toma ulisses xcomputerman i'll be killing soon. i've built a list of people with accounts that have not done anything pretty much all of this year (since rev 56000). if you're on this list and think that you want to keep access, then make your case as to why you should. note this is nothing personal - this is simply keeping access to those that need AND use it. it minimizes our security exposure. the list is here: 3v1n0 adam cmarcelo cobra dieb dottedmag emfox helen horms jethomas josch kaethorn kiwi lfelipe lmunch lucho manowarrior mcalamelli morphis ningerso otaviobp pfritz rbelem rfonseca semernin sevcsik term toma ulisses xcomputerman -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- The demand for IT networking professionals continues to grow, and the demand for specialized networking skills is growing even more rapidly. Take a complimentary Learning@Cisco Self-Assessment and learn about Cisco certifications, training, and career opportunities. http://p.sf.net/sfu/cisco-dev2dev ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Improving Elementary for the release
On Tue, 8 Nov 2011 18:31:23 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Mon, 7 Nov 2011 14:12:42 +0100 Cedric BAIL cedric.b...@free.fr said: Hi all, We are going to try releasing Elementary soon after the release of the EFL 1.1. I would like to start a discussion now on what should be done to prepare Elementary for a release. I have been doing a quick overview of Elementary.h. The first problem is that we have a lot of structure in it that should be allocated by the application and they don't have any information about version or size, so we will not be able to touch them after the release anymore. That's bad, I think we need to fix that by adding function that will do the allocation and zero the memory before giving the pointer to the app. yes - genlist (grid) - Elm_Gen_Item_Class, Elm_Genlist_Item_Class and Elm_Gengrid_Item_Class is mostly the culprit. we need to alloc this in elm so then elm knows its the right struct size for the version of elm running. the app knows how many members are there based on elm version so it can avoid using members if version when they were introduced. Elm_Entry_Filter_Limit_Size maybe is a candidate - but i don't think it ever needs changing, and if it did we'de provide a different callback to set other than elm_entry_filter_limit_size() Elm_Entry_Filter_Accept_Set i think is ok for the same reason as above. Elm_Web_Menu looks like it needs an allocation call from elm as well as Elm_Web_Menu_Item what's Elm_Web_Download for? it's not used anywhere? Elm_Slideshow_Item_Class is another culprit like gen*. Elm_Store_* stuff is... well interesting. i don't think this needs versioning as the mapping stuff can be extended by adding more enums for new mapping modes. we covered basic types and then extension via custom cb. so we're good here i think. the item info is alloced by elm and passed to app so thats ok. so summary: need allocators and freers, add ref count number (so genlist/grid/whatever while USING the item can keep it around if items referring to the class are around still even if app freed it): Elm_Gen_Item_Class ** Elm_Genlist_Item_Class Elm_Gengrid_Item_Class the above two will need to be removed by the time a release occurs. as it is, anyone using them is just hitting a define which maps them to Elm_Gen_Item_Class anyway. Elm_Web_Menu Elm_Web_Menu_Item Elm_Slideshow_Item_Class removal: Elm_Web_Download (n.b. i am basing only a need for an allocator on the assumption that if elm allocs and the struct gets bigger in future, new fields will be properly 0'd out and 0 will mean don't use or change behavior if old app doesn't touch new entires, and apps that want to handle older elm's can use elm version to know what members may not be there in older structs). The second point is about both gengrid and genlist. I would like to add a few new callback : - content_set/content_unset: when set, content_get will return an object, but it will be reused and it's real content will be set and unset later. This permit the implementation of some cache mechanisme directly inside elm_gen. - label_free: if set, it will be able to override the call to free. This could help, I have found many times that I am using stringshare or static string that really don't need to be strdup. Btw I don't like the name of that callback This second list of change should not break API/ABI once the first change are done. So not a big hurry, but they are simple to do and should help provide better performance. Of course I don't plan to play with this until the EFL 1.1 are out, so you have time for comment. I put here only the thing I want to do and how I plan to fix them. If you have some idea of what need to be fixed in Elementary before the release and how you want to do it, maybe answering to this thread will be a good idea. Have fun, -- Cedric BAIL -- Mike Blumenkrantz Zentific: Doctor recommended, mother approved. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Query and set elementary.Entry cursor position
Hey, Is there a way to set elementary.Entry's cursor position? When I hit Ctrl-S, Ctrl-R elementary injects 0x12, 0x13, etc bytes in the entry, so I get the entry's content (entry_get()), I removes the 0x13 bytes and I set the entry again with entry_set() function. The problem is, when I hit shortcut in the middle of the entry it always jumps the cursor at the beginning of the entry when entry_set() is called. I cant control the cursor position. Its really irritating when I type and hit on a shortcut and resume typing. (Ok I use cursor_end_set() function call, its less annoying, but does not change a thing). I also workarounded the builtin Tab behaviour (by focusing the previous element on the gui. I need a list of entrys in my app, to know what to focus). I've been also hit by a race condition, ie. when hitting Ctrl-L, I focus an entry (like in firefox the addressbar is focused), and depending when I last refreshed the entry with entry_set() call, the Ctrl-char (0x0c) may or may not be added into the entry. (ie. it focus() first the entry and miss injecting the 0x0c byte in the entry) So apart of the inability to control the cursor's position, do not have direct address to the system's clipboard in elementary (Ctrl-C, Ctrl-V, double click), I workarounded everything in elementary (ie. to be my application in real life usable the most notable workaround is the bookkeeping elementary entry's cursor position by each keypress in my own python program. So I can control when to jump into next cell.) So in total Im pretty happy with my tiny application, I can basically work 1.8 time more at my daily job then before:) Thank you for elementary and its python bindings! By the way, is there a list of apps using python elementary? Would be nice to see some more real life apps, and gather more ideas. Best, Laszlo -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Query and set elementary.Entry cursor position
On Tue, 8 Nov 2011 14:13:43 +0100 Laszlo KREKACS laszlo.krekacs.l...@gmail.com said: elm_entry_cursor_pos_set() elm_entry_cursor_pos_get() entry also supports filters to approve or deny text going in - u can filter out undesired chars: elm_entry_text_filter_append() works by callbacks. for race condition... can you expand on that? for clipboard - entry handles it itself and talks to clipboard directly... well selections (primary, secondary). anything else i guess is up to you to insert text from another clipboard yourself if u want other clipboards... now the catch here may be.. python bindings haven't bound everything the c api can do... :( i'd have to check, but i suspect these haven't been bound. :) Hey, Is there a way to set elementary.Entry's cursor position? When I hit Ctrl-S, Ctrl-R elementary injects 0x12, 0x13, etc bytes in the entry, so I get the entry's content (entry_get()), I removes the 0x13 bytes and I set the entry again with entry_set() function. The problem is, when I hit shortcut in the middle of the entry it always jumps the cursor at the beginning of the entry when entry_set() is called. I cant control the cursor position. Its really irritating when I type and hit on a shortcut and resume typing. (Ok I use cursor_end_set() function call, its less annoying, but does not change a thing). I also workarounded the builtin Tab behaviour (by focusing the previous element on the gui. I need a list of entrys in my app, to know what to focus). I've been also hit by a race condition, ie. when hitting Ctrl-L, I focus an entry (like in firefox the addressbar is focused), and depending when I last refreshed the entry with entry_set() call, the Ctrl-char (0x0c) may or may not be added into the entry. (ie. it focus() first the entry and miss injecting the 0x0c byte in the entry) So apart of the inability to control the cursor's position, do not have direct address to the system's clipboard in elementary (Ctrl-C, Ctrl-V, double click), I workarounded everything in elementary (ie. to be my application in real life usable the most notable workaround is the bookkeeping elementary entry's cursor position by each keypress in my own python program. So I can control when to jump into next cell.) So in total Im pretty happy with my tiny application, I can basically work 1.8 time more at my daily job then before:) Thank you for elementary and its python bindings! By the way, is there a list of apps using python elementary? Would be nice to see some more real life apps, and gather more ideas. Best, Laszlo -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Improving Elementary for the release
On Mon, Nov 7, 2011 at 10:40 PM, Youness Alaoui kakar...@kakaroto.homelinux.net wrote: Ok, I checked Ecore.h and I see what you mean, but that's only useful if you break the API, the padding is useful for not breaking the API but keeping the .so ABI-compatible. For example, if you only add a function to the API, you add the @since in the docs, and all the software that was linked to your .so will still work because the other functions are the same and their behavior is the same, so it's not an API break, but you incremented the API with a new function that can be used by future apps. If that new function needs a variable in the structure, then you can just replace one of the void * paddings and that's it, it works.. If you don't have padding and you add a new field in the struct, the sizeof(struct whatever) will change, so anything that instanciates your structure will be allocating wrongly sized memory and that can lead to memory corruption (since your old API will be compiled with the new sizeof). Thus breaks the ABI and it forces every app using your library to get recompiled (no code change, it just needs a recompile) for it to work.. this also means that your .so version will need to change, .so.1.1 instead of .so.1.0 for example, it basically amounts to the same as breaking the API even though it's not necessary if you had padding. Of course, any internal structure doesn't need that, so if you allocate a structure using a function call and the user of the lib only sees it as an opaque struct pointer, then you don't need padding, but if the struct itself is defined in the .h and is public, then it would need the padding to avoid breaking the ABI/API for compatible+incremental API changes. This is a stupid workaround used in Gtk world. With version you can do that and even more, you can even reorder fields, like below: if (st-version == 1) { Old_St *s = (Old_St *)st; code_accessing_the_old_way(s); } else if (st-version == 2) { code_accessing_the_new_way(st); } In other words, you can know exactly what to do, and not just assume you won't break because there is enough allocated memory to access. -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: raster trunk/edje/src/modules/alsa_snd_player
On Tue, Nov 8, 2011 at 5:14 AM, Enlightenment SVN no-re...@enlightenment.org wrote: Log: see how much morte code i had to add just to use eina_log gustavo? i had to add eina_init() and shutdown and init refcounting and log domain creating and add a macro.. so i can finally use it? eina being included here actually was never needed... but since include was there i could use it... just saying - using eina_log is not convenient. it doesn't save time. it's benefits are dubious (knowing what envv ar to set to what values to get log output is black magic as u need to know specific log level values and log domain names which u only find out by digging thru code). my point - if u want eina_log used more.. it needs to be AS EASY as the printf. :) next time just do: #define WRN(...) EINA_LOG_WARN(__VA_ARGS__) it's then only a single line more than printf() and still way more useful for everyone else. But creating a domain is as simple as C would let you, those init/shutdown are painful due to C, not Eina. It's the odds of such low level language, you said you don't mind typing... then why complain? And remember that eina_log does not need \n at the end, it will append whenever required (if one uses syslog or other system it won't be needed). Also, the patch mixes lots of non-log related structure renaming... So the patch size is way bigger. -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: raster trunk/edje/src/modules/alsa_snd_player
On Mon, Nov 7, 2011 at 1:45 PM, Carsten Haitzler ras...@rasterman.com wrote: On Mon, 7 Nov 2011 12:38:37 -0200 Gustavo Sverzut Barbieri barbi...@profusion.mobi said: i didn't write it. it came that way. eina_log is also much less convenient as i have to set up a log domain id, create it, delete it, have all the init/shutdown infra then and then finally use longer function calls (or add more macros). it isn't conducive to being used. i understand your point - but the code came this way and i don't have a religious take on this so much that i will instantly refactor code to use eina log when i have other issues to chase down - like mixing issues that i was creating a simplified test case for today as well as cleaning the code up a bit. Raster, Next time please request the author to send the mail to the list before. It will save you time, it will save us time, it will improve quality, it will not make you a bad guy with them, and will avoid us being pictured as jerks. I know you're working as hard as possible to get it, but you're a single human and it's not being enough and the project suffers. I'll send an email about this in another thread. Regards, -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Improving Elementary for the release
On Tue, Nov 8, 2011 at 9:18 AM, Gustavo Sverzut Barbieri barbi...@profusion.mobi wrote: On Mon, Nov 7, 2011 at 10:40 PM, Youness Alaoui kakar...@kakaroto.homelinux.net wrote: Ok, I checked Ecore.h and I see what you mean, but that's only useful if you break the API, the padding is useful for not breaking the API but keeping the .so ABI-compatible. For example, if you only add a function to the API, you add the @since in the docs, and all the software that was linked to your .so will still work because the other functions are the same and their behavior is the same, so it's not an API break, but you incremented the API with a new function that can be used by future apps. If that new function needs a variable in the structure, then you can just replace one of the void * paddings and that's it, it works.. If you don't have padding and you add a new field in the struct, the sizeof(struct whatever) will change, so anything that instanciates your structure will be allocating wrongly sized memory and that can lead to memory corruption (since your old API will be compiled with the new sizeof). Thus breaks the ABI and it forces every app using your library to get recompiled (no code change, it just needs a recompile) for it to work.. this also means that your .so version will need to change, .so.1.1 instead of .so.1.0 for example, it basically amounts to the same as breaking the API even though it's not necessary if you had padding. Of course, any internal structure doesn't need that, so if you allocate a structure using a function call and the user of the lib only sees it as an opaque struct pointer, then you don't need padding, but if the struct itself is defined in the .h and is public, then it would need the padding to avoid breaking the ABI/API for compatible+incremental API changes. This is a stupid workaround used in Gtk world. With version you can do that and even more, you can even reorder fields, like below: yes it's a workaround in gtk world, doesn't make it stupid though. And no, you missed my point completely, you can't do that with version. if (st-version == 1) { Old_St *s = (Old_St *)st; code_accessing_the_old_way(s); } else if (st-version == 2) { code_accessing_the_new_way(st); } In other words, you can know exactly what to do, and not just assume you won't break because there is enough allocated memory to access. yes, that is *only* valid if you write your app after both version 1 and 2 have been released, and it means that the structure needs to be renamed between both versions so it doesn't conflict, and mostly it means that your version 2 breaks the API from version 1. If you read what I wrote, you'd understand that the purpose is to release a new version without breaking the API, without forcing every app to recompile itself or to change its code... you cannot do that with version. -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] [ecore_file] Add file remove for cleanup
Hi, I add ecore_file_remove() for removing a NULL file opened by fopen(dst, wb). Please review below. Index: src/lib/ecore_file/ecore_file_download.c === --- src/lib/ecore_file/ecore_file_download.c(리비전 64937) +++ src/lib/ecore_file/ecore_file_download.c(작업 사본) @@ -105,14 +105,14 @@ _ecore_file_download(const char *url, if (!ecore_file_is_dir(dir)) { -EINA_LOG_ERR(%s is not a directory, dir); +ERR(%s is not a directory, dir); free(dir); return EINA_FALSE; } free(dir); if (ecore_file_exists(dst)) { -EINA_LOG_ERR(%s already exists, dst); +WRN(%s already exists, dst); return EINA_FALSE; } @@ -140,7 +140,7 @@ _ecore_file_download(const char *url, return EINA_TRUE; else { - EINA_LOG_ERR(no job returned\n); + ERR(no job returned\n); return EINA_FALSE; } return job ? EINA_TRUE : EINA_FALSE; @@ -374,6 +374,7 @@ _ecore_file_download_curl(const char *ur ecore_con_url_free(job-url_con); _job_list = eina_list_remove(_job_list, job); fclose(job-file); +ecore_file_remove(job-dst); free(job-dst); free(job); return NULL; Index: src/lib/ecore_file/ecore_file_download.c === --- src/lib/ecore_file/ecore_file_download.c (리비전 64937) +++ src/lib/ecore_file/ecore_file_download.c (작업 사본) @@ -105,14 +105,14 @@ _ecore_file_download(const char *url, if (!ecore_file_is_dir(dir)) { -EINA_LOG_ERR(%s is not a directory, dir); +ERR(%s is not a directory, dir); free(dir); return EINA_FALSE; } free(dir); if (ecore_file_exists(dst)) { -EINA_LOG_ERR(%s already exists, dst); +WRN(%s already exists, dst); return EINA_FALSE; } @@ -140,7 +140,7 @@ _ecore_file_download(const char *url, return EINA_TRUE; else { - EINA_LOG_ERR(no job returned\n); + ERR(no job returned\n); return EINA_FALSE; } return job ? EINA_TRUE : EINA_FALSE; @@ -374,6 +374,7 @@ _ecore_file_download_curl(const char *ur ecore_con_url_free(job-url_con); _job_list = eina_list_remove(_job_list, job); fclose(job-file); +ecore_file_remove(job-dst); free(job-dst); free(job); return NULL; -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [ecore_file] Add file remove for cleanup
On Wed, 9 Nov 2011 09:50:11 +0900 Bluezery ohpo...@gmail.com wrote: Hi, I add ecore_file_remove() for removing a NULL file opened by fopen(dst, wb). Please review below. Index: src/lib/ecore_file/ecore_file_download.c === --- src/lib/ecore_file/ecore_file_download.c (리비전 64937) +++ src/lib/ecore_file/ecore_file_download.c (작업 사본) @@ -105,14 +105,14 @@ _ecore_file_download(const char *url, if (!ecore_file_is_dir(dir)) { -EINA_LOG_ERR(%s is not a directory, dir); +ERR(%s is not a directory, dir); free(dir); return EINA_FALSE; } free(dir); if (ecore_file_exists(dst)) { -EINA_LOG_ERR(%s already exists, dst); +WRN(%s already exists, dst); return EINA_FALSE; } @@ -140,7 +140,7 @@ _ecore_file_download(const char *url, return EINA_TRUE; else { - EINA_LOG_ERR(no job returned\n); + ERR(no job returned\n); return EINA_FALSE; } return job ? EINA_TRUE : EINA_FALSE; @@ -374,6 +374,7 @@ _ecore_file_download_curl(const char *ur ecore_con_url_free(job-url_con); _job_list = eina_list_remove(_job_list, job); fclose(job-file); +ecore_file_remove(job-dst); free(job-dst); free(job); return NULL; in -- Mike Blumenkrantz Zentific: Doctor recommended, mother approved. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] EFL 1.1 roundup
It's that time again! Everyone point your browsers to http://dev.enlightenment.fr/~discomfitor/ and start fixing the things you know! -- Mike Blumenkrantz Zentific: Doctor recommended, mother approved. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: raster trunk/e_dbus/src/lib/notification
On Tue, 8 Nov 2011 05:00:51 -0800 Enlightenment SVN no-re...@enlightenment.org wrote: Log: THIS is the right way to handle the img data coming from notification msg's and objects and passing it into evas objects. take note! Author: raster Date: 2011-11-08 05:00:51 -0800 (Tue, 08 Nov 2011) New Revision: 64947 Trac: http://trac.enlightenment.org/e/changeset/64947 Modified: trunk/e_dbus/src/lib/notification/notification.c hmm something about this commit broke image alpha for notify images. transparent backgrounds are now white -- Mike Blumenkrantz Zentific: Doctor recommended, mother approved. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
On Tue, 8 Nov 2011 15:41:11 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Tue, 8 Nov 2011 13:49:57 +1000 David Seikel onef...@gmail.com said: On Tue, 8 Nov 2011 12:15:44 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Tue, 8 Nov 2011 00:13:18 +1000 David Seikel onef...@gmail.com said: On Mon, 7 Nov 2011 23:55:24 +1000 David Seikel onef...@gmail.com wrote: On Mon, 7 Nov 2011 22:48:04 +1000 David Seikel onef...@gmail.com wrote: On Mon, 7 Nov 2011 21:36:43 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Mon, 7 Nov 2011 11:00:24 +0100 Raoul Hecky raoul.he...@gmail.com said: Le lundi 7 novembre 2011 04:33:10, Carsten Haitzler a écrit : attached. this was a sample edc that would be able to play audio, not just single samples but whole sequences across multiple tracks as well as control specific channels and tracks. it didn't specify looping params yet or other additional stuff. Such a huge thing just to play sound in edje... Is it really necessary to have all this in edje or are you just nostalgic of the good old days of trackers?? DAMNED STRAIGHT I AM! :) i just discovered milkytracker! i'm enjoying myself thoroughly! :) seriously though... you CAN still just play samples.. then play samples WITH volume envelopes and looping (sounds as this glues sample+envelopes) and then play entire sequences (a series of samples played with timing), which is the basics for most musical scoring, then combine these into multiple track patterns and put them together into whole songs if u want. it drops down to the simple and up to the whole compose a whole score end of things. if all you ever choose to do is play samples - then its largely irrelevant. reality is that if you want to have complex sound effects you need to start doing all of these little bits. :) let me give an example. scrolling. you want to play some wind blowing when you first start to drag - this may consist of 2 or 3 channels of sound with various wind samples overlayed at staggered intervals to give the impression of something that isn't always looping and repeating (it's a neat trick you also can do with overlayed images). you want this song to fade in then keep looping a few patterns where you really are using 5 or so 5 second samples to create several minutes of wind sound. now when you actually MOVE your mouse (or finger) you year some tinkling sounds that sound like the small glass bells being shaken. these play and fade out becoming quieter the slower your drag and varying pitch depending on how high or low your position is on the scroll range. you would implement these with another few tacks like the wind, applying modifiers for pitch and volume of the play instructions. the bell sample can be 2 or 3 samples like the wind to give the impression of many distinct bells, just played at differing speeds for pitches (you can normally go up 1 octave before it sounds just odd and want to get a new sampling). I'm excited by that. B-) However, with multisense turned on (Ubuntu 10.04, sndfile 1.0.21), when it gets to compiling elementary's edje files I get - /opt/e17/bin/edje_cc -id ../../data/themes -fd ../../data/themes \ --../../data/themes/default.edc \ --../../data/themes/default.edj /opt/e17/bin/edje_cc -id ../../data/themes -fd ../../data/themes \ --../../data/themes/default-desktop.edc \ --../../data/themes/default-desktop.edj ALSA player_plugin init fail Couldn't open any output device. ALSA player_plugin init fail Couldn't open any output device. make[3]: Leaving directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/themes' Making all in images make[3]: Entering directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/images' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/images' Making all in objects make[3]: Entering directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/objects' /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/test.edc \ --../../data/objects/test.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/multip.edc \ --../../data/objects/multip.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \
Re: [E-devel] E SVN: raster trunk/e_dbus/src/lib/notification
On Tue, 8 Nov 2011 21:14:43 -0500 Mike Blumenkrantz m...@zentific.com said: On Tue, 8 Nov 2011 05:00:51 -0800 Enlightenment SVN no-re...@enlightenment.org wrote: Log: THIS is the right way to handle the img data coming from notification msg's and objects and passing it into evas objects. take note! Author: raster Date: 2011-11-08 05:00:51 -0800 (Tue, 08 Nov 2011) New Revision: 64947 Trac: http://trac.enlightenment.org/e/changeset/64947 Modified: trunk/e_dbus/src/lib/notification/notification.c hmm something about this commit broke image alpha for notify images. transparent backgrounds are now white icons coming from apps to an efl notification thing like e17 and notify module or.. efl SENDING notification icons? -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
On Wed, 9 Nov 2011 14:56:48 +1000 David Seikel onef...@gmail.com said: On Tue, 8 Nov 2011 15:41:11 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Tue, 8 Nov 2011 13:49:57 +1000 David Seikel onef...@gmail.com said: On Tue, 8 Nov 2011 12:15:44 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Tue, 8 Nov 2011 00:13:18 +1000 David Seikel onef...@gmail.com said: On Mon, 7 Nov 2011 23:55:24 +1000 David Seikel onef...@gmail.com wrote: On Mon, 7 Nov 2011 22:48:04 +1000 David Seikel onef...@gmail.com wrote: On Mon, 7 Nov 2011 21:36:43 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Mon, 7 Nov 2011 11:00:24 +0100 Raoul Hecky raoul.he...@gmail.com said: Le lundi 7 novembre 2011 04:33:10, Carsten Haitzler a écrit : attached. this was a sample edc that would be able to play audio, not just single samples but whole sequences across multiple tracks as well as control specific channels and tracks. it didn't specify looping params yet or other additional stuff. Such a huge thing just to play sound in edje... Is it really necessary to have all this in edje or are you just nostalgic of the good old days of trackers?? DAMNED STRAIGHT I AM! :) i just discovered milkytracker! i'm enjoying myself thoroughly! :) seriously though... you CAN still just play samples.. then play samples WITH volume envelopes and looping (sounds as this glues sample+envelopes) and then play entire sequences (a series of samples played with timing), which is the basics for most musical scoring, then combine these into multiple track patterns and put them together into whole songs if u want. it drops down to the simple and up to the whole compose a whole score end of things. if all you ever choose to do is play samples - then its largely irrelevant. reality is that if you want to have complex sound effects you need to start doing all of these little bits. :) let me give an example. scrolling. you want to play some wind blowing when you first start to drag - this may consist of 2 or 3 channels of sound with various wind samples overlayed at staggered intervals to give the impression of something that isn't always looping and repeating (it's a neat trick you also can do with overlayed images). you want this song to fade in then keep looping a few patterns where you really are using 5 or so 5 second samples to create several minutes of wind sound. now when you actually MOVE your mouse (or finger) you year some tinkling sounds that sound like the small glass bells being shaken. these play and fade out becoming quieter the slower your drag and varying pitch depending on how high or low your position is on the scroll range. you would implement these with another few tacks like the wind, applying modifiers for pitch and volume of the play instructions. the bell sample can be 2 or 3 samples like the wind to give the impression of many distinct bells, just played at differing speeds for pitches (you can normally go up 1 octave before it sounds just odd and want to get a new sampling). I'm excited by that. B-) However, with multisense turned on (Ubuntu 10.04, sndfile 1.0.21), when it gets to compiling elementary's edje files I get - /opt/e17/bin/edje_cc -id ../../data/themes -fd ../../data/themes \ --../../data/themes/default.edc \ --../../data/themes/default.edj /opt/e17/bin/edje_cc -id ../../data/themes -fd ../../data/themes \ --../../data/themes/default-desktop.edc \ --../../data/themes/default-desktop.edj ALSA player_plugin init fail Couldn't open any output device. ALSA player_plugin init fail Couldn't open any output device. make[3]: Leaving directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/themes' Making all in images make[3]: Entering directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/images' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/images' Making all in objects make[3]: Entering directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/objects' /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/test.edc \ --../../data/objects/test.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd
Re: [E-devel] EFL 1.1 roundup
On Tue, 8 Nov 2011, Mike Blumenkrantz wrote: It's that time again! Everyone point your browsers to http://dev.enlightenment.fr/~discomfitor/ and start fixing the things you know! why is there some conftest.c files listed there ? Vincent -- Mike Blumenkrantz Zentific: Doctor recommended, mother approved. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [Patch] eina_array small patch
On Tue, 08 Nov 2011 08:23:28 + (GMT) 윤정현 jh0506@samsung.com said: Dear All. I found a bug in eina_array_remove function. If array-data is NULL, eina_array_remove will be crashed. I added handling code in eina_array_remove. Please review this small patch. i think this is covering up another bug... total should always be 0 if data is null... it should never get to this stage... -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel