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