Hi JackDanielZ

Thanks for looking into this, I appreciate the help. I think you're seeing
this other bug: https://phab.enlightenment.org/T2136

I have no idea yet why this is being freed but I have noticed that the
widget sometimes disappears before crash which I guess means something is
actually removing the widget. Any ideas how I could track that down?

Thanks,
Andrew

On Mon, 10 Aug 2015 08:24 Daniel Zaoui <daniel.za...@samsung.com> wrote:

> Hi Andy,
>
> I installed and tried. A few times work well for me. Many many switches
> make the job. However I have an issue with gdb, as bt contains more than
> 1800 frames (http://pastebin.com/L34yR7b7) :-)))
>
> For some reason, someone unrefs some object during its destruction,
> leading to some Eo error message sent via Eina_Log and caught by
> _edi_logpanel_print_cb that appends the message to something that will
> trigger _elm_interface_scrollable_content_viewport_geometry_get that will
> finally eo_unref and trigger a new error message sent via Eina_Log...
> again... you got the point :-)
>
> Summary, ARGHHHHHH!!!!!!!!!!
>
> Can you check we are on the same issue?
>
> JackDanielZ
>
> On Sun, 09 Aug 2015 08:53:59 +0000
> Andrew Williams <a...@andywilliams.me> wrote:
>
> > Hi,
> >
> > Yeah it's weird. I suspect it may be non-deterministic which might
> > explain the behavior when debugging.
> > The editor->entry looks to have the same pointer value as when the
> > entry widget is created.
> >
> > To reproduce open a few files in edi (make sure you've built with
> > libclang so syntax highlighting runs). Make a small change (eg enter,
> > backspace) then switch tab. Doing that a few times usually triggers
> > the crash.
> >
> > Thanks for the help,
> > Andy
> >
> > On Sun, 9 Aug 2015 06:19 Daniel Zaoui <daniel.za...@samsung.com>
> > wrote:
> >
> > > Hi Andrew,
> > >
> > > This is really weird that that eo_class_name_get crashes when
> > > eo_class_name_get(eo_class_get()) doesn't.
> > >
> > > What is the value of the editor->entry?
> > > Can you send us instructions on how to reproduce it locally?
> > >
> > > JackDanielZ
> > >
> > >
> > > On Fri, 07 Aug 2015 13:30:33 +0000
> > > Andrew Williams <a...@andywilliams.me> wrote:
> > >
> > > > Hi,
> > > >
> > > > >From what I can tell the widget has been freed by elm/evas in a
> > > > >smart_del
> > > > callback and so removed from the lookups.
> > > > Currently I have no idea why as the widget is still on screen.
> > > >
> > > > Looking further...
> > > >
> > > > Andrew
> > > >
> > > > On Fri, 7 Aug 2015 at 09:59 Tom Hacohen <t...@osg.samsung.com>
> > > > wrote:
> > > >
> > > > > On 06/08/15 23:27, Andrew Williams wrote:
> > > > > > Hi guys,
> > > > > >
> > > > > > Thanks for the help - still rather confuse though - no more
> > > > > > info as far as I can see...
> > > > > >
> > > > > > (gdb) p eo_data_scope_get(editor->entry,
> > > > > > elm_code_widget_class_get()) $3 = (void *) 0x0
> > > > > > (gdb) p eo_class_name_get(eo_class_get(editor->entry))
> > > > > > $4 = 0x0
> > > > > > (gdb) p eo_class_name_get(editor->entry)
> > > > > >
> > > > > > Program received signal SIGSEGV, Segmentation fault.
> > > > > > 0x00007fffec54c48e in vfprintf () from /usr/lib/libc.so.6
> > > > > > The program being debugged was signaled while in a function
> > > > > > called from
> > > > > GDB.
> > > > > > GDB remains in the frame where the signal was received.
> > > > > > To change this behavior use "set unwindonsignal on".
> > > > > > Evaluation of the expression containing the function
> > > > > > (eo_class_name_get) will be abandoned.
> > > > > > When the function is done executing, GDB will silently stop.
> > > > > >
> > > > > > Still confused, switching to valgrind to try and figure
> > > > > > something out.
> > > > >
> > > > > For all I remember, we test validity for both cases, so it's
> > > > > weird it would crash. The pointer definitely seems wrong, but I
> > > > > wonder how it can be so corrupt that it crashes. Looking
> > > > > forward to your report.
> > > > >
> > > > > --
> > > > > Tom.
> > > > >
> > > > > >
> > > > > > Cheers,
> > > > > > Andy
> > > > > >
> > > > > > On Wed, 22 Jul 2015 at 08:50 Daniel Zaoui
> > > > > > <daniel.za...@samsung.com <mailto:daniel.za...@samsung.com>>
> > > > > > wrote:
> > > > > >
> > > > > >     On Wed, 22 Jul 2015 08:31:35 +0100
> > > > > >     Tom Hacohen <t...@osg.samsung.com
> > > > > > <mailto:t...@osg.samsung.com>>
> > > > > wrote:
> > > > > >
> > > > > >     According to git, Jeremy did that two years ago.
> > > > > >     Personally, I like it this way as it is easier for
> > > > > > debugging. And well, I never needed to get the name of a
> > > > > > class, but always of an object.
> > > > > >
> > > > > >      > When was that changed? Isn't it kinda wrong to do it
> > > > > >      > now that
> > > > > both Eo
> > > > > >      > classes and objects are "Eo *"? Because when you invoke
> > > > > >      > this on classes you want to get the class class, how do
> > > > > >      > you do the
> > > > > detection?
> > > > > >      > Feels a bit inconsistent to me.
> > > > > >      >
> > > > > >      > --
> > > > > >      > Tom.
> > > > > >      >
> > > > > >      >
> > > > > >      > On 22/07/15 08:28, Daniel Zaoui wrote:
> > > > > >      > > On Wed, 22 Jul 2015 08:21:02 +0100
> > > > > >      > > Tom Hacohen <t...@osg.samsung.com
> > > > > >      > > <mailto:t...@osg.samsung.com>>
> > > > > >     wrote:
> > > > > >      > >
> > > > > >      > > Hey boy, you don't need anymore eo_class_get in the
> > > > > >      > > middle! ;-)
> > > > > >      > >
> > > > > >      > >> p eo_class_name_get(eo_class_get(editory->entry))
> > > > > >      > >>
> > > > > >      > >> As Daniel said though, this shouldn't and can't
> > > > > >      > >> happen. The
> > > > > only
> > > > > >      > >> reason why this function would return NULL is an
> > > > > >      > >> error. It
> > > > > >     works by
> > > > > >      > >> adding an offset to the data pointer, so as long as
> > > > > >      > >> it passes (basic) validation, it should at least
> > > > > >      > >> return something.
> > > > > >      > >>
> > > > > >      > >> --
> > > > > >      > >> Tom.
> > > > > >      > >>
> > > > > >      > >> On 22/07/15 07:31, Daniel Zaoui wrote:
> > > > > >      > >>> Hi,
> > > > > >      > >>>
> > > > > >      > >>> I never saw this kind of behavior, except if your
> > > > > >      > >>> object has
> > > > > been
> > > > > >      > >>> freed (should see error prints) or your pointer is
> > > > > >      > >>> NULL or
> > > > > >     even if
> > > > > >      > >>> your object is not of the correct type.
> > > > > >      > >>>
> > > > > >      > >>> Do you see any Eo error messages? Can you "p
> > > > > >      > >>> eo_class_name_get(editor->entry)"? Can you enter
> > > > > >      > >>> the function
> > > > > and
> > > > > >      > >>> give more info on what happens inside? Maybe some
> > > > > >      > >>> thread
> > > > > deletes
> > > > > >      > >>> the object when another tries to access?
> > > > > >      > >>>
> > > > > >      > >>> JackDanielZ
> > > > > >      > >>>
> > > > > >      > >>> On Tue, 21 Jul 2015 23:19:07 +0000
> > > > > >      > >>> Andrew Williams <a...@andywilliams.me
> > > > > >     <mailto:a...@andywilliams.me>> wrote:
> > > > > >      > >>>
> > > > > >      > >>>> Hi,
> > > > > >      > >>>>
> > > > > >      > >>>> I'm trying to trace down a really annoying bug but
> > > > > >      > >>>> it's
> > > > > proving
> > > > > >      > >>>> illusive. I have some Eo objects (the
> > > > > >      > >>>> Elm_Code_Widget) that stores a lot of information
> > > > > >      > >>>> in it's associated data object.
> > > > > This
> > > > > >      > >>>> works most of the time but on some occasions -
> > > > > >      > >>>> potentially
> > > > > >     in the
> > > > > >      > >>>> vicinity of different thread access, but not
> > > > > >      > >>>> reliably reproducible
> > > > > >      > >>>> - the data seems to be NULL.
> > > > > >      > >>>>
> > > > > >      > >>>> p eo_data_scope_get(editor->entry,
> > > > > elm_code_widget_class_get())
> > > > > >      > >>>> $5 = (void *) 0x0
> > > > > >      > >>>> (this call normally returns a pointer to an
> > > > > Elm_Code_Widget_Data
> > > > > >      > >>>> struct)
> > > > > >      > >>>>
> > > > > >      > >>>> Can anyone suggest why this could happen - what
> > > > > >      > >>>> sort of
> > > > > error is
> > > > > >      > >>>> it likely I have created that could cause this
> > > > > >      > >>>> behaviour? It's driving me crazy as for the most
> > > > > >      > >>>> part it works fine but
> > > > > >     some
> > > > > >      > >>>> combination of time and/or memory setup and/or
> > > > > >      > >>>> threading
> > > > > >     seems to
> > > > > >      > >>>> trip it up.
> > > > > >      > >>>>
> > > > > >      > >>>> Many thanks for any suggestions,
> > > > > >      > >>>> Andrew
> > > > > >      > >>>>
> > > > > >
> > > > >
> > >
> ------------------------------------------------------------------------------
> > > > > >      > >>>> Don't Limit Your Business. Reach for the Cloud.
> > > > > >      > >>>> GigeNET's Cloud Solutions provide you with the
> > > > > >      > >>>> tools and
> > > > > support
> > > > > >      > >>>> that you need to offload your IT needs and focus
> > > > > >      > >>>> on growing
> > > > > your
> > > > > >      > >>>> business. Configured For All Businesses. Start
> > > > > >      > >>>> Your Cloud
> > > > > Today.
> > > > > >      > >>>> https://www.gigenetcloud.com/
> > > > > >      > >>>> _______________________________________________
> > > > > >      > >>>> enlightenment-devel mailing list
> > > > > >      > >>>> enlightenment-devel@lists.sourceforge.net
> > > > > >     <mailto:enlightenment-devel@lists.sourceforge.net>
> > > > > >      > >>>>
> > > > > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > > > > >      > >>>
> > > > > >      > >>>
> > > > > >      > >>>
> > > > > >
> > > > >
> > >
> ------------------------------------------------------------------------------
> > > > > >      > >>> Don't Limit Your Business. Reach for the Cloud.
> > > > > >      > >>> GigeNET's Cloud Solutions provide you with the
> > > > > >      > >>> tools and
> > > > > support
> > > > > >      > >>> that you need to offload your IT needs and focus on
> > > > > >      > >>> growing
> > > > > your
> > > > > >      > >>> business. Configured For All Businesses. Start Your
> > > > > >      > >>> Cloud
> > > > > Today.
> > > > > >      > >>> https://www.gigenetcloud.com/
> > > > > >      > >>> _______________________________________________
> > > > > >      > >>> enlightenment-devel mailing list
> > > > > >      > >>> enlightenment-devel@lists.sourceforge.net
> > > > > >     <mailto:enlightenment-devel@lists.sourceforge.net>
> > > > > >      > >>>
> > > > > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > > > > >      > >>>
> > > > > >      > >>
> > > > > >      > >>
> > > > > >      > >>
> > > > > >
> > > > >
> > >
> ------------------------------------------------------------------------------
> > > > > >      > >> Don't Limit Your Business. Reach for the Cloud.
> > > > > >      > >> GigeNET's Cloud Solutions provide you with the
> > > > > >      > >> tools and
> > > > > support
> > > > > >      > >> that you need to offload your IT needs and focus on
> > > > > >      > >> growing
> > > > > your
> > > > > >      > >> business. Configured For All Businesses. Start Your
> > > > > >      > >> Cloud
> > > > > Today.
> > > > > >      > >> https://www.gigenetcloud.com/
> > > > > >      > >> _______________________________________________
> > > > > >      > >> enlightenment-devel mailing list
> > > > > >      > >> enlightenment-devel@lists.sourceforge.net
> > > > > >     <mailto:enlightenment-devel@lists.sourceforge.net>
> > > > > >      > >>
> > > > > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > > > > >      > >
> > > > > >      >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > >
> ------------------------------------------------------------------------------
> > > > > >     Don't Limit Your Business. Reach for the Cloud.
> > > > > >     GigeNET's Cloud Solutions provide you with the tools and
> > > > > > support that you need to offload your IT needs and focus on
> > > > > > growing your business. Configured For All Businesses. Start
> > > > > > Your Cloud Today. https://www.gigenetcloud.com/
> > > > > >     _______________________________________________
> > > > > >     enlightenment-devel mailing list
> > > > > >     enlightenment-devel@lists.sourceforge.net
> > > > > >     <mailto:enlightenment-devel@lists.sourceforge.net>
> > > > > >
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > > > > >
> > > > > *
> > > > >
> > > >
> > >
> ------------------------------------------------------------------------------
> > > > _______________________________________________
> > > > enlightenment-devel mailing list
> > > > enlightenment-devel@lists.sourceforge.net
> > > > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > >
> > >
>
>
------------------------------------------------------------------------------
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to