Alex Wu | 9 Aug 2012 08:38
Picon

[E-devel] [PATCH] evas: hide the evas object after it's smart object deleted.

Hi,
This patch fix the bug http://trac.enlightenment.org/e/ticket/1308

The root cause of this bug is that when closing the window,
the glview widget need to invoke eng_gl_make_current() before calling
it's del_func. In eng_gl_make_current(), the re->win->egl_display
make the segfualt. It is because re->win has been nullized by
evas_object_hide()<--evas_object_del()<--evas_object_unref()<--
_elm_win_frame_cb_close() which is triggered by clicking the "close"
button.

I think it is resonable to destroy the re->win of a elm_win after
all smart data deleted.

Patch attached.

From a8ed356360fbea5ae715c083e239e66e552e4001 Mon Sep 17 00:00:00 2001
From: Alex Wu <zhiwen.wu <at> linux.intel.com>
Date: Thu, 9 Aug 2012 13:53:54 +0800
Subject: [PATCH] evas: hide the evas object after it's smart object deleted.

This patch fix the bug http://trac.enlightenment.org/e/ticket/1308

The root cause of this bug is that when closing the window,
the glview widget need to invoke eng_gl_make_current() before calling
it's del_func. In eng_gl_make_current(), the re->win->egl_display
make the segfualt. It is because re->win has been nullized by
evas_object_hide()<--evas_object_del()<--evas_object_unref()<--
(Continue reading)

Gustavo Sverzut Barbieri | 9 Aug 2012 14:52

Re: [E-devel] [PATCH] evas: hide the evas object after it's smart object deleted.

On Thursday, August 9, 2012, Alex Wu wrote:

> Hi,
> This patch fix the bug http://trac.enlightenment.org/e/ticket/1308
>
> The root cause of this bug is that when closing the window,
> the glview widget need to invoke eng_gl_make_current() before calling
> it's del_func. In eng_gl_make_current(), the re->win->egl_display
> make the segfualt. It is because re->win has been nullized by
> evas_object_hide()<--evas_object_del()<--evas_object_unref()<--
> _elm_win_frame_cb_close() which is triggered by clicking the "close"
> button.
>
> I think it is resonable to destroy the re->win of a elm_win after
> all smart data deleted.

Although the patch does not look problematic per se, it fixes an egl bug in
a generic code? That do not seem right. Why don't you hande this condition
in egl engine?

>
> Patch attached.
>
>
>

--

-- 
Gustavo Sverzut Barbieri
http://profusion.mobi embedded systems
--------------------------------------
(Continue reading)

wuzhiwen | 10 Aug 2012 04:25
Picon

Re: [E-devel] [PATCH] evas: hide the evas object after it's smart object deleted.


>-----Original Message-----
>From: Gustavo Sverzut Barbieri [mailto:barbieri <at> profusion.mobi]
>Sent: Thursday, August 09, 2012 8:53 PM
>To: Enlightenment developer list
>Cc: eduardo.de.barros.lima <at> intel.com
>Subject: Re: [E-devel] [PATCH] evas: hide the evas object after it's smart
object
>deleted.
>
>On Thursday, August 9, 2012, Alex Wu wrote:
>
>> Hi,
>> This patch fix the bug http://trac.enlightenment.org/e/ticket/1308
>>
>> The root cause of this bug is that when closing the window, the glview
>> widget need to invoke eng_gl_make_current() before calling it's
>> del_func. In eng_gl_make_current(), the re->win->egl_display make the
>> segfualt. It is because re->win has been nullized by
>> evas_object_hide()<--evas_object_del()<--evas_object_unref()<--
>> _elm_win_frame_cb_close() which is triggered by clicking the "close"
>> button.
>>
>> I think it is resonable to destroy the re->win of a elm_win after all
>> smart data deleted.
>
>
>Although the patch does not look problematic per se, it fixes an egl bug in
a
>generic code? That do not seem right. Why don't you hande this condition in
(Continue reading)

Christopher Michael | 10 Aug 2012 08:53

Re: [E-devel] [PATCH] evas: hide the evas object after it's smart object deleted.

On 08/10/2012 03:25 AM, wuzhiwen wrote:
>
>
>> -----Original Message-----
>> From: Gustavo Sverzut Barbieri [mailto:barbieri <at> profusion.mobi]
>> Sent: Thursday, August 09, 2012 8:53 PM
>> To: Enlightenment developer list
>> Cc: eduardo.de.barros.lima <at> intel.com
>> Subject: Re: [E-devel] [PATCH] evas: hide the evas object after it's smart
> object
>> deleted.
>>
>> On Thursday, August 9, 2012, Alex Wu wrote:
>>
>>> Hi,
>>> This patch fix the bug http://trac.enlightenment.org/e/ticket/1308
>>>
>>> The root cause of this bug is that when closing the window, the glview
>>> widget need to invoke eng_gl_make_current() before calling it's
>>> del_func. In eng_gl_make_current(), the re->win->egl_display make the
>>> segfualt. It is because re->win has been nullized by
>>> evas_object_hide()<--evas_object_del()<--evas_object_unref()<--
>>> _elm_win_frame_cb_close() which is triggered by clicking the "close"
>>> button.
>>>
>>> I think it is resonable to destroy the re->win of a elm_win after all
>>> smart data deleted.
>>
>>
>> Although the patch does not look problematic per se, it fixes an egl bug in
(Continue reading)

Carsten Haitzler | 10 Aug 2012 10:55
Favicon
Gravatar

Re: [E-devel] [PATCH] evas: hide the evas object after it's smart object deleted.

On Fri, 10 Aug 2012 07:53:07 +0100 Christopher Michael <cp.michael <at> samsung.com>
said:

> On 08/10/2012 03:25 AM, wuzhiwen wrote:
> >
> >
> >> -----Original Message-----
> >> From: Gustavo Sverzut Barbieri [mailto:barbieri <at> profusion.mobi]
> >> Sent: Thursday, August 09, 2012 8:53 PM
> >> To: Enlightenment developer list
> >> Cc: eduardo.de.barros.lima <at> intel.com
> >> Subject: Re: [E-devel] [PATCH] evas: hide the evas object after it's smart
> > object
> >> deleted.
> >>
> >> On Thursday, August 9, 2012, Alex Wu wrote:
> >>
> >>> Hi,
> >>> This patch fix the bug http://trac.enlightenment.org/e/ticket/1308
> >>>
> >>> The root cause of this bug is that when closing the window, the glview
> >>> widget need to invoke eng_gl_make_current() before calling it's
> >>> del_func. In eng_gl_make_current(), the re->win->egl_display make the
> >>> segfualt. It is because re->win has been nullized by
> >>> evas_object_hide()<--evas_object_del()<--evas_object_unref()<--
> >>> _elm_win_frame_cb_close() which is triggered by clicking the "close"
> >>> button.
> >>>
> >>> I think it is resonable to destroy the re->win of a elm_win after all
> >>> smart data deleted.
(Continue reading)

Christopher Michael | 10 Aug 2012 11:11

Re: [E-devel] [PATCH] evas: hide the evas object after it's smart object deleted.

On 08/10/2012 09:55 AM, Carsten Haitzler (The Rasterman) wrote:
> On Fri, 10 Aug 2012 07:53:07 +0100 Christopher Michael <cp.michael <at> samsung.com>
> said:
>
>> On 08/10/2012 03:25 AM, wuzhiwen wrote:
>>>
>>>
>>>> -----Original Message-----
>>>> From: Gustavo Sverzut Barbieri [mailto:barbieri <at> profusion.mobi]
>>>> Sent: Thursday, August 09, 2012 8:53 PM
>>>> To: Enlightenment developer list
>>>> Cc: eduardo.de.barros.lima <at> intel.com
>>>> Subject: Re: [E-devel] [PATCH] evas: hide the evas object after it's smart
>>> object
>>>> deleted.
>>>>
>>>> On Thursday, August 9, 2012, Alex Wu wrote:
>>>>
>>>>> Hi,
>>>>> This patch fix the bug http://trac.enlightenment.org/e/ticket/1308
>>>>>
>>>>> The root cause of this bug is that when closing the window, the glview
>>>>> widget need to invoke eng_gl_make_current() before calling it's
>>>>> del_func. In eng_gl_make_current(), the re->win->egl_display make the
>>>>> segfualt. It is because re->win has been nullized by
>>>>> evas_object_hide()<--evas_object_del()<--evas_object_unref()<--
>>>>> _elm_win_frame_cb_close() which is triggered by clicking the "close"
>>>>> button.
>>>>>
>>>>> I think it is resonable to destroy the re->win of a elm_win after all
(Continue reading)

Gustavo Barbieri | 10 Aug 2012 13:44

Re: [E-devel] [PATCH] evas: hide the evas object after it's smart object deleted.


On Friday, August 10, 2012, Christopher Michael wrote:
On 08/10/2012 09:55 AM, Carsten Haitzler (The Rasterman) wrote:
> On Fri, 10 Aug 2012 07:53:07 +0100 Christopher Michael <cp.michael <at> samsung.com>
> said:
>
>> On 08/10/2012 03:25 AM, wuzhiwen wrote:
>>>
>>>
>>>> -----Original Message-----
>>>> From: Gustavo Sverzut Barbieri [mailto:barbieri <at> profusion.mobi]
>>>> Sent: Thursday, August 09, 2012 8:53 PM
>>>> To: Enlightenment developer list
>>>> Cc: eduardo.de.barros.lima <at> intel.com
>>>> Subject: Re: [E-devel] [PATCH] evas: hide the evas object after it's smart
>>> object
>>>> deleted.
>>>>
>>>> On Thursday, August 9, 2012, Alex Wu wrote:
>>>>
>>>>> Hi,
>>>>> This patch fix the bug http://trac.enlightenment.org/e/ticket/1308
>>>>>
>>>>> The root cause of this bug is that when closing the window, the glview
>>>>> widget need to invoke eng_gl_make_current() before calling it's
>>>>> del_func. In eng_gl_make_current(), the re->win->egl_display make the
>>>>> segfualt. It is because re->win has been nullized by
>>>>> evas_object_hide()<--evas_object_del()<--evas_object_unref()<--
>>>>> _elm_win_frame_cb_close() which is triggered by clicking the "close"
>>>>> button.
(Continue reading)


Gmane