Hi Cedric,
I think ethumb check routine had to be added as well.
It had build break without ethumb installation.
I fixed it. Can you check it?
http://trac.enlightenment.org/e/changeset/58982

Thanks gouache for letting me know.
Daniel Juyung Seo (SeoZ) <http://trac.enlightenment.org/e/changeset/58982>

On Thu, Apr 28, 2011 at 3:07 AM, Enlightenment SVN <
[email protected]> wrote:

> Log:
> elementary: use new ethumb async exists API.
>
>
> Author:       cedric
> Date:         2011-04-27 11:07:18 -0700 (Wed, 27 Apr 2011)
> New Revision: 58978
> Trac:         http://trac.enlightenment.org/e/changeset/58978
>
> Modified:
>  trunk/elementary/src/lib/elm_thumb.c
>
> Modified: trunk/elementary/src/lib/elm_thumb.c
> ===================================================================
> --- trunk/elementary/src/lib/elm_thumb.c        2011-04-27 18:06:42 UTC
> (rev 58977)
> +++ trunk/elementary/src/lib/elm_thumb.c        2011-04-27 18:07:18 UTC
> (rev 58978)
> @@ -35,6 +35,7 @@
>         int id;
>         const char *file;
>         const char *key;
> +        Ethumb_Exists *exists;
>      } thumb;
>    Ecore_Event_Handler *eeh;
>    Elm_Thumb_Animation_Setting anim_setting;
> @@ -87,6 +88,11 @@
>    if (wd->thumb.id >= 0)
>      ethumb_client_generate_cancel(_elm_ethumb_client, wd->thumb.id,
>                                    NULL, NULL, NULL);
> +   if (wd->thumb.exists)
> +     {
> +        ethumb_client_thumb_exists_cancel(wd->thumb.exists);
> +        wd->thumb.exists = NULL;
> +     }
>  #endif
>
>    eina_stringshare_del(wd->file);
> @@ -239,19 +245,15 @@
>  }
>
>  static void
> -_thumb_apply(Widget_Data *wd)
> +_thumb_exists(Ethumb_Client *client, Ethumb_Exists *thread,
> +              Eina_Bool exists, void *data)
>  {
> -   if (wd->thumb.id > 0)
> -     {
> -        ethumb_client_generate_cancel
> -           (_elm_ethumb_client, wd->thumb.id, NULL, NULL, NULL);
> -        wd->thumb.id = -1;
> -     }
> +   Widget_Data *wd = data;
>
> -   if (!wd->file) return;
> +   if (ethumb_client_thumb_exists_check(thread))
> +     return ;
>
> -   ethumb_client_file_set(_elm_ethumb_client, wd->file, wd->key);
> -   if (ethumb_client_thumb_exists(_elm_ethumb_client))
> +   if (exists)
>      {
>         const char *thumb_path, *thumb_key;
>
> @@ -274,8 +276,31 @@
>         edje_object_signal_emit(wd->frame, EDJE_SIGNAL_GENERATE_ERROR,
> "elm");
>         evas_object_smart_callback_call(wd->self, SIG_GENERATE_ERROR,
> NULL);
>      }
> +
>  }
>
> +static void
> +_thumb_apply(Widget_Data *wd)
> +{
> +   if (wd->thumb.id > 0)
> +     {
> +        ethumb_client_generate_cancel
> +           (_elm_ethumb_client, wd->thumb.id, NULL, NULL, NULL);
> +        wd->thumb.id = -1;
> +     }
> +
> +   if (wd->thumb.exists)
> +     {
> +        ethumb_client_thumb_exists_cancel(wd->thumb.exists);
> +        wd->thumb.exists = NULL;
> +     }
> +
> +   if (!wd->file) return;
> +
> +   ethumb_client_file_set(_elm_ethumb_client, wd->file, wd->key);
> +   ethumb_client_thumb_exists(_elm_ethumb_client, _thumb_exists, wd);
> +}
> +
>  static Eina_Bool
>  _thumb_apply_cb(void *data, int type __UNUSED__, void *ev __UNUSED__)
>  {
> @@ -322,6 +347,12 @@
>         evas_object_smart_callback_call(wd->self, SIG_GENERATE_STOP, NULL);
>      }
>
> +   if (wd->thumb.exists)
> +     {
> +        ethumb_client_thumb_exists_cancel(wd->thumb.exists);
> +        wd->thumb.exists = NULL;
> +     }
> +
>    if (wd->eeh)
>      {
>         ecore_event_handler_del(wd->eeh);
> @@ -442,6 +473,7 @@
>    wd->key = NULL;
>    wd->eeh = NULL;
>    wd->thumb.id = -1;
> +   wd->thumb.exists = NULL;
>    wd->on_hold = EINA_FALSE;
>    wd->is_video = EINA_FALSE;
>    wd->was_video = EINA_FALSE;
>
>
>
> ------------------------------------------------------------------------------
> WhatsUp Gold - Download Free Network Management Software
> The most intuitive, comprehensive, and cost-effective network
> management toolset available today.  Delivers lowest initial
> acquisition cost and overall TCO of any competing solution.
> http://p.sf.net/sfu/whatsupgold-sd
> _______________________________________________
> enlightenment-svn mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/enlightenment-svn
>
------------------------------------------------------------------------------
WhatsUp Gold - Download Free Network Management Software
The most intuitive, comprehensive, and cost-effective network 
management toolset available today.  Delivers lowest initial 
acquisition cost and overall TCO of any competing solution.
http://p.sf.net/sfu/whatsupgold-sd
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to