On Sat, Aug 31, 2013 at 8:03 PM, Daniel Juyung Seo <seojuyu...@gmail.com> wrote: > Tom, I like this patch but I don't think this can go into 1.7 branch as per > this is not a bug fix that we have been doing for release branch so far. > This can be a precedence. Someone else will quote this commit later when > they want to do something more than a bug fix in a release branch. > (It reminds me of multibuttenentry commit disaster.) > And I think your commit has influence considering your position in efl > world. > I also want to listen to other's opinion. >
Yes, but it's not so much introducing a new features as it is providing with support for a handy development tool. > Thanks. > > Daniel Juyung Seo (SeoZ) > > > On Sat, Aug 31, 2013 at 6:11 AM, Tom Hacohen <t...@stosb.com> wrote: > >> I'm fine with removing it if you really think that. >> I only added it because it's a code path that doesn't run unless you >> activate it, and that it's not a feature per se. >> >> I know it's problematic, and I guess, that if I had seen someone else's >> code that does something similar I might have objected. >> >> So let's see what other people think as well. >> >> -- >> Tom. >> >> >> On Fri, Aug 30, 2013 at 6:03 PM, Rafael Antognolli <antogno...@gmail.com >> >wrote: >> >> > I think it will create a precedence! >> > >> > On Fri, Aug 30, 2013 at 12:48 PM, Tom Hacohen <tom.haco...@samsung.com> >> > wrote: >> > > I think it's fine for 1.7, but let me know if you think it's too much >> of >> > > a feature and that can hurt stability. It's only activated if the >> > > environment variable is set, so I don't see much harm. >> > > >> > > -- >> > > Tom. >> > > >> > > On 30/08/13 16:41, Tom 'TAsn' Hacohen - Enlightenment Git wrote: >> > >> tasn pushed a commit to branch elementary-1.7. >> > >> >> > >> commit 49a3f7ee22b6ddf0869a6ba82660308c3f4d0bbd >> > >> Author: Tom 'TAsn' Hacohen <t...@stosb.com> >> > >> Date: Fri Aug 30 16:39:51 2013 +0100 >> > >> >> > >> Added clouseau integration. >> > >> >> > >> You need to make sure the clouseau daemon is running (clouseaud), >> > and then >> > >> you can just run applications by setting the env var ELM_CLOUSEAU >> > to 1. >> > >> This is very useful for platforms that do not have LD_PRELOAD, or >> > block >> > >> them for any reason. >> > >> Most people should just stick to using clouseau_start or >> clouseau. >> > >> --- >> > >> ChangeLog | 5 ++++ >> > >> NEWS | 3 +++ >> > >> src/lib/elm_main.c | 72 >> > ++++++++++++++++++++++++++++++++++++++++++++++++++++++ >> > >> 3 files changed, 80 insertions(+) >> > >> >> > >> diff --git a/ChangeLog b/ChangeLog >> > >> index bdfa90e..29ce358 100644 >> > >> --- a/ChangeLog >> > >> +++ b/ChangeLog >> > >> @@ -840,3 +840,8 @@ >> > >> 2013-08-02 Eduardo Lima (Etrunko) >> > >> >> > >> * 1.7.8 release >> > >> + >> > >> +2013-08-30 Tom Hacohen (TAsn) >> > >> + >> > >> + * Clouseau: Added clouseau integration. >> > >> + >> > >> diff --git a/NEWS b/NEWS >> > >> index 21c2a59..6866407 100644 >> > >> --- a/NEWS >> > >> +++ b/NEWS >> > >> @@ -3,6 +3,9 @@ Elementary 1.7.8 >> > >> Changes since Elementary 1.7.7: >> > >> ------------------------- >> > >> >> > >> +Improvements: >> > >> + * Clouseau: Added clouseau integration. >> > >> + >> > >> Fixes: >> > >> >> > >> * Fix potential free'ed memory dereference in naviframe. >> > >> diff --git a/src/lib/elm_main.c b/src/lib/elm_main.c >> > >> index 1a09663..81e6103 100644 >> > >> --- a/src/lib/elm_main.c >> > >> +++ b/src/lib/elm_main.c >> > >> @@ -23,6 +23,12 @@ >> > >> >> > >> #define SEMI_BROKEN_QUICKLAUNCH 1 >> > >> >> > >> +#ifdef __CYGWIN__ >> > >> +# define LIBEXT ".dll" >> > >> +#else >> > >> +# define LIBEXT ".so" >> > >> +#endif >> > >> + >> > >> static Elm_Version _version = { VMAJ, VMIN, VMIC, VREV }; >> > >> EAPI Elm_Version *elm_version = &_version; >> > >> >> > >> @@ -198,6 +204,55 @@ _prefix_shutdown(void) >> > >> app_pfx = NULL; >> > >> } >> > >> >> > >> +static struct { >> > >> + Eina_Module *handle; >> > >> + void (*init)(void); >> > >> + void (*shutdown)(void); >> > >> + Eina_Bool (*app_connect)(const char *appname); >> > >> +} _clouseau_info; >> > >> + >> > >> +#define _CLOUSEAU_LOAD_SYMBOL(cls_struct, sym) \ >> > >> + do \ >> > >> + { \ >> > >> + (cls_struct).sym = >> eina_module_symbol_get((cls_struct).handle, >> > "clouseau_" #sym); \ >> > >> + if (!(cls_struct).sym) \ >> > >> + { \ >> > >> + WRN("Failed loading symbol '%s' from the clouseau >> > library.", "clouseau_" #sym); \ >> > >> + eina_module_free((cls_struct).handle); \ >> > >> + (cls_struct).handle = NULL; \ >> > >> + return EINA_FALSE; \ >> > >> + } \ >> > >> + } \ >> > >> + while (0) >> > >> + >> > >> +static Eina_Bool >> > >> +_clouseau_module_load() >> > >> +{ >> > >> + const char *elm_clouseau_env = getenv("ELM_CLOUSEAU"); >> > >> + Eina_Bool want_cls = EINA_FALSE; >> > >> + if (elm_clouseau_env) >> > >> + want_cls = atoi(elm_clouseau_env); >> > >> + >> > >> + if (!want_cls) >> > >> + return EINA_FALSE; >> > >> + >> > >> + _clouseau_info.handle = eina_module_new( >> > >> + PACKAGE_LIB_DIR "/clouseau/libclouseau" LIBEXT); >> > >> + if (!eina_module_load(_clouseau_info.handle)) >> > >> + { >> > >> + WRN("Failed loading the clouseau library."); >> > >> + eina_module_free(_clouseau_info.handle); >> > >> + _clouseau_info.handle = NULL; >> > >> + return EINA_FALSE; >> > >> + } >> > >> + >> > >> + _CLOUSEAU_LOAD_SYMBOL(_clouseau_info, init); >> > >> + _CLOUSEAU_LOAD_SYMBOL(_clouseau_info, shutdown); >> > >> + _CLOUSEAU_LOAD_SYMBOL(_clouseau_info, app_connect); >> > >> + >> > >> + return EINA_TRUE; >> > >> +} >> > >> + >> > >> EAPI int >> > >> elm_init(int argc, >> > >> char **argv) >> > >> @@ -206,6 +261,16 @@ elm_init(int argc, >> > >> if (_elm_init_count > 1) return _elm_init_count; >> > >> elm_quicklaunch_sub_init(argc, argv); >> > >> _prefix_shutdown(); >> > >> + >> > >> + if (_clouseau_module_load()) >> > >> + { >> > >> + _clouseau_info.init(); >> > >> + if(!_clouseau_info.app_connect(argv[0])) >> > >> + { >> > >> + ERR("Failed connecting to the clouseau server."); >> > >> + } >> > >> + } >> > >> + >> > >> return _elm_init_count; >> > >> } >> > >> >> > >> @@ -221,6 +286,13 @@ elm_shutdown(void) >> > >> if (_elm_init_count > 0) return _elm_init_count; >> > >> _elm_win_shutdown(); >> > >> while (_elm_win_deferred_free) ecore_main_loop_iterate(); >> > >> + >> > >> + if (_clouseau_info.shutdown) >> > >> + { >> > >> + _clouseau_info.shutdown(); >> > >> + eina_module_free(_clouseau_info.handle); >> > >> + _clouseau_info.handle = NULL; >> > >> + } >> > >> // wrningz :( >> > >> // _prefix_shutdown(); >> > >> elm_quicklaunch_sub_shutdown(); >> > >> >> > > >> > > >> > > >> > >> ------------------------------------------------------------------------------ >> > > Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more! >> > > Discover the easy way to master current and previous Microsoft >> > technologies >> > > and advance your career. Get an incredible 1,500+ hours of step-by-step >> > > tutorial videos with LearnDevNow. Subscribe today and save! >> > > >> > >> http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk >> > > _______________________________________________ >> > > enlightenment-devel mailing list >> > > enlightenment-devel@lists.sourceforge.net >> > > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel >> > >> > >> > >> > -- >> > Rafael Antognolli >> > >> > >> > >> ------------------------------------------------------------------------------ >> > Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more! >> > Discover the easy way to master current and previous Microsoft >> technologies >> > and advance your career. Get an incredible 1,500+ hours of step-by-step >> > tutorial videos with LearnDevNow. Subscribe today and save! >> > >> http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk >> > _______________________________________________ >> > enlightenment-devel mailing list >> > enlightenment-devel@lists.sourceforge.net >> > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel >> > >> >> ------------------------------------------------------------------------------ >> Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more! >> Discover the easy way to master current and previous Microsoft technologies >> and advance your career. Get an incredible 1,500+ hours of step-by-step >> tutorial videos with LearnDevNow. Subscribe today and save! >> http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk >> _______________________________________________ >> enlightenment-devel mailing list >> enlightenment-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel >> > ------------------------------------------------------------------------------ > Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more! > Discover the easy way to master current and previous Microsoft technologies > and advance your career. Get an incredible 1,500+ hours of step-by-step > tutorial videos with LearnDevNow. Subscribe today and save! > http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk > _______________________________________________ > enlightenment-devel mailing list > enlightenment-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel ------------------------------------------------------------------------------ Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more! Discover the easy way to master current and previous Microsoft technologies and advance your career. Get an incredible 1,500+ hours of step-by-step tutorial videos with LearnDevNow. Subscribe today and save! http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel