Hi,

Good catch. I wondered a bit as well.

On Sat, Apr 18, 2015 at 3:07 AM, Davide Andreoli <[email protected]>
wrote:

> 2015-04-17 3:33 GMT+02:00 Jean-Philippe ANDRÉ <[email protected]>:
>
> > jpeg pushed a commit to branch master.
> >
> >
> >
> http://git.enlightenment.org/core/enlightenment.git/commit/?id=b30892056e0a527545c8a022cd2b3cdef0ec85af
> >
> > commit b30892056e0a527545c8a022cd2b3cdef0ec85af
> > Author: Jean-Philippe Andre <[email protected]>
> > Date:   Fri Apr 17 10:30:06 2015 +0900
> >
> >     PackageKit: Fix crash on error
> >
> >     Sometimes a "normal" error occurs and then the callback is
> >     called with no context data. Then crash boom sigsegv happens.
> >
>
> Seems to me that you are just hiding a bug somewhere else.
> How can this be called without ctxt?
> You mentioned packagekit_get_updates() but in that function ctxt is
> used before the call to _store_error()... it should crash on line 395 then,
> how this can happen? Can you explain better your issue?
>

Here's the code:

     pending = eldbus_proxy_call(proxy, "GetUpdates", null_cb, NULL, -1,
"t", 1);

The data is NULL and didn't realize ctxt was known at that point. Stupid
me. Will fix.
I've seen crashes happen quite a few times (maybe blame my proxy for
network errors).

Let's see if my next commit is the right one ;)

Thanks again.
Best regards,


>
>
>
> > ---
> >  src/modules/packagekit/e_mod_packagekit.c | 1 +
> >  1 file changed, 1 insertion(+)
> >
> > diff --git a/src/modules/packagekit/e_mod_packagekit.c
> > b/src/modules/packagekit/e_mod_packagekit.c
> > index a2c0683..051d620 100644
> > --- a/src/modules/packagekit/e_mod_packagekit.c
> > +++ b/src/modules/packagekit/e_mod_packagekit.c
> > @@ -220,6 +220,7 @@ static void
> >  _store_error(E_PackageKit_Module_Context *ctxt, const char *err)
> >  {
> >     ERR("PKGKIT: ERROR: %s", err);
> > +   if (!ctxt) return; // see packagekit_get_updates()
> >     if (ctxt->error)
> >        eina_stringshare_replace(&ctxt->error, err);
> >     else
> >
> > --
> >
> >
> >
>
> ------------------------------------------------------------------------------
> BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
> Develop your own process in accordance with the BPMN 2 standard
> Learn Process modeling best practices with Bonita BPM through live
> exercises
> http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual-
> event?utm_
> source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
> _______________________________________________
> enlightenment-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>



-- 
Jean-Philippe André
------------------------------------------------------------------------------
BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
Develop your own process in accordance with the BPMN 2 standard
Learn Process modeling best practices with Bonita BPM through live exercises
http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to