Thanks for the good fix.
I confirmed this works good at home and work. It fixed e17 crash issue.

Daniel Juyung Seo (SeoZ)


On Mon, Nov 12, 2012 at 11:45 PM, Enlightenment SVN <
no-re...@enlightenment.org> wrote:

> Log:
> try avoid null ptr derefs.
>
>
>
> Author:       raster
> Date:         2012-11-12 06:45:59 -0800 (Mon, 12 Nov 2012)
> New Revision: 79168
> Trac:         http://trac.enlightenment.org/e/changeset/79168
>
> Modified:
>   trunk/e/src/bin/e_desk.c trunk/e/src/modules/pager/e_mod_main.c
>
> Modified: trunk/e/src/bin/e_desk.c
> ===================================================================
> --- trunk/e/src/bin/e_desk.c    2012-11-12 14:45:07 UTC (rev 79167)
> +++ trunk/e/src/bin/e_desk.c    2012-11-12 14:45:59 UTC (rev 79168)
> @@ -420,7 +420,7 @@
>  {
>     E_OBJECT_CHECK_RETURN(zone, NULL);
>     E_OBJECT_TYPE_CHECK_RETURN(zone, E_ZONE_TYPE, NULL);
> -
> +
>     return e_desk_at_xy_get(zone, zone->desk_x_current,
> zone->desk_y_current);
>  }
>
> @@ -435,6 +435,7 @@
>     else if ((x < 0) || (y < 0))
>       return NULL;
>
> +   if (!zone->desks) return NULL;
>     return zone->desks[x + (y * zone->desk_x_count)];
>  }
>
>
> Modified: trunk/e/src/modules/pager/e_mod_main.c
> ===================================================================
> --- trunk/e/src/modules/pager/e_mod_main.c      2012-11-12 14:45:07 UTC
> (rev 79167)
> +++ trunk/e/src/modules/pager/e_mod_main.c      2012-11-12 14:45:59 UTC
> (rev 79168)
> @@ -355,12 +355,15 @@
>               E_Desk *desk;
>
>               desk = e_desk_at_xy_get(p->zone, x, y);
> -             pd = _pager_desk_new(p, desk, x, y, p->invert);
> -             if (pd)
> +             if (desk)
>                 {
> -                  p->desks = eina_list_append(p->desks, pd);
> -                  if (desk == e_desk_current_get(desk->zone))
> -                    _pager_desk_select(pd);
> +                  pd = _pager_desk_new(p, desk, x, y, p->invert);
> +                  if (pd)
> +                    {
> +                       p->desks = eina_list_append(p->desks, pd);
> +                       if (desk == e_desk_current_get(desk->zone))
> +                         _pager_desk_select(pd);
> +                    }
>                 }
>            }
>       }
> @@ -412,6 +415,7 @@
>     int w, h;
>     Evas *e;
>
> +   if (!desk) return NULL;
>     pd = E_NEW(Pager_Desk, 1);
>     if (!pd) return NULL;
>
>
>
>
> ------------------------------------------------------------------------------
> Everyone hates slow websites. So do we.
> Make your web apps faster with AppDynamics
> Download AppDynamics Lite for free today:
> http://p.sf.net/sfu/appdyn_d2d_nov
> _______________________________________________
> enlightenment-svn mailing list
> enlightenment-...@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-svn
>
------------------------------------------------------------------------------
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to