On Thu, 24 Sep 2015 09:13:10 +0900 Carsten Haitzler (The Rasterman) <ras...@rasterman.com> wrote:
> On Wed, 23 Sep 2015 15:39:11 +0000 Mike Blumenkrantz > <michael.blumenkra...@gmail.com> said: > > > As I said in my initial mail, this was pushed accidentally during testing. > > I've been working with you on the open audit in phabricator and had no > > intention of making related changes until this had been confirmed as > > completely resolved in all cases. > > you mentioned a different commit in the "accidental" mail. i didn't know this > was part of the accident. :) hhhhhhhhhhhhhhh this is what happens when you mail while on drugs. This is going to be a rough allergy season. > > > On Wed, Sep 23, 2015 at 9:15 AM Carsten Haitzler <ras...@rasterman.com> > > wrote: > > > > > On Tue, 22 Sep 2015 10:08:46 -0700 Mike Blumenkrantz > > > <michael.blumenkra...@gmail.com> said: > > > > > > > > > the crash is back again now. same backtraces, same issue. not fixed. > > > please put > > > back my refcounting as it fixes things to not crash. until you actually > > > find > > > the REAL root cause... as i said before - i identified that mb->m is > > > pointing > > > to junk. it obviously is being freed too soon. refcounting is a standard > > > way to > > > fix things - keep them around as long as they are referenced. i hit this > > > all > > > the time now (the crash). > > > > > > > discomfitor pushed a commit to branch master. > > > > > > > > > > > http://git.enlightenment.org/core/enlightenment.git/commit/?id=2373b69c61d7d6ab74675a4facff54601831ce9a > > > > > > > > commit 2373b69c61d7d6ab74675a4facff54601831ce9a > > > > Author: Mike Blumenkrantz <zm...@osg.samsung.com> > > > > Date: Tue Sep 22 12:54:10 2015 -0400 > > > > > > > > Revert "Revert "Revert "deskmirror - fix dangling reference to > > > mirror by > > > > refcounting it""" > > > > This reverts commit 6bef668a8fb37104f1e9e4bb1bb0dd379cb68ef5. > > > > --- > > > > src/bin/e_deskmirror.c | 23 +---------------------- > > > > 1 file changed, 1 insertion(+), 22 deletions(-) > > > > > > > > diff --git a/src/bin/e_deskmirror.c b/src/bin/e_deskmirror.c > > > > index 4abc0b3..3efe066 100644 > > > > --- a/src/bin/e_deskmirror.c > > > > +++ b/src/bin/e_deskmirror.c > > > > @@ -41,7 +41,6 @@ typedef struct Mirror > > > > Evas_Object *comp_object; > > > > Evas_Object *mirror; > > > > int x, y, w, h; > > > > - int ref; > > > > Eina_Bool added : 1; > > > > } Mirror; > > > > > > > > @@ -111,20 +110,6 @@ _mirror_scale_set(Mirror *m, float sc) > > > > } > > > > > > > > static void > > > > -_mirror_ref(Mirror *m) > > > > -{ > > > > - m->ref++; > > > > -} > > > > - > > > > -static void > > > > -_mirror_unref(Mirror *m) > > > > -{ > > > > - m->ref--; > > > > - if (m->ref > 0) return; > > > > - free(m); > > > > -} > > > > - > > > > -static void > > > > _e_deskmirror_smart_reconfigure(E_Smart_Data *sd) > > > > { > > > > e_layout_freeze(sd->layout); > > > > @@ -352,10 +337,7 @@ _mirror_client_smart_del(Evas_Object *obj) > > > > evas_object_smart_callback_del_full(mb->m->ec->frame, > > > > "shadow_change", _mirror_client_shadow_change, mb->frame); } > > > > evas_object_del(mb->frame); > > > > - mb->frame = NULL; > > > > evas_object_del(mb->mirror); > > > > - mb->mirror = NULL; > > > > - _mirror_unref(mb->m); > > > > free(mb); > > > > } > > > > > > > > @@ -492,13 +474,12 @@ _e_deskmirror_mirror_del_hash(Mirror *m) > > > > evas_object_smart_callback_del_full(m->comp_object, > > > "frame_recalc_done", > > > > _e_deskmirror_mirror_frame_recalc_cb, m); > > > evas_object_event_callback_del_full > > > > (m->comp_object, EVAS_CALLBACK_DEL, _e_deskmirror_mirror_del_cb, m); > > > > evas_object_del(m->mirror); > > > > - m->mirror = NULL; > > > > evas_object_event_callback_del_full(m->comp_object, > > > EVAS_CALLBACK_SHOW, > > > > (Evas_Object_Event_Cb)_comp_object_show, m); > > > > evas_object_event_callback_del_full(m->comp_object, EVAS_CALLBACK_HIDE, > > > > (Evas_Object_Event_Cb)_comp_object_hide, m); > > > > evas_object_event_callback_del_full(m->comp_object, > > > EVAS_CALLBACK_RESTACK, > > > > (Evas_Object_Event_Cb)_comp_object_stack, m); > > > > evas_object_event_callback_del_full(m->comp_object, > > > > EVAS_CALLBACK_RESIZE, > > > > (Evas_Object_Event_Cb)_comp_object_configure, m); > > > > evas_object_event_callback_del_full(m->comp_object, EVAS_CALLBACK_MOVE, > > > > (Evas_Object_Event_Cb)_comp_object_configure, m); > > > > - _mirror_unref(m); > > > > + free(m); > > > > } > > > > > > > > static Evas_Object * > > > > @@ -511,7 +492,6 @@ _mirror_client_new(Mirror *m) > > > > o = evas_object_smart_add(m->sd->e, _mirror_client_smart); > > > > mb = evas_object_smart_data_get(o); > > > > mb->m = m; > > > > - _mirror_ref(m); > > > > mb->frame = edje_object_add(m->sd->e); > > > > evas_object_name_set(mb->frame, "mirror_border"); > > > > _mirror_client_theme_setup(mb, mb->frame); > > > > @@ -676,7 +656,6 @@ _e_deskmirror_mirror_add(E_Smart_Data *sd, > > > Evas_Object > > > > *obj) m->ec = ec; > > > > m->sd = sd; > > > > m->mirror = o; > > > > - m->ref = 1; > > > > evas_object_event_callback_add(obj, EVAS_CALLBACK_SHOW, > > > > (Evas_Object_Event_Cb)_comp_object_show, m); > > > evas_object_event_callback_add > > > > (obj, EVAS_CALLBACK_HIDE, (Evas_Object_Event_Cb)_comp_object_hide, m); > > > > evas_object_event_callback_add(obj, EVAS_CALLBACK_RESTACK, > > > > (Evas_Object_Event_Cb)_comp_object_stack, m); > > > > > > > > -- > > > > > > > > > > > > > > > > > -- > > > ------------- Codito, ergo sum - "I code, therefore I am" -------------- > > > The Rasterman (Carsten Haitzler) ras...@rasterman.com > > > > > > > > ------------------------------------------------------------------------------ Monitor Your Dynamic Infrastructure at Any Scale With Datadog! Get real-time metrics from all of your servers, apps and tools in one place. SourceForge users - Click here to start your Free Trial of Datadog now! http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140 _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel