Languages

Menu
Sites
Language
EFL warnings

Hi all,
​We are working on some native app and have requirement to exclude such warning from our app. Is there some document or guide about how to fix these warnings? For example how to detect what object initiate such warning:

10-05 22:51:01.837 : ERROR / EFL ( 1465 : 1465 ) : evas_main<1465> lib/evas/canvas/evas_object_smart.c:960 _evas_object_smart_need_recalculate_set() Object 0x80052e99 is not stable during recalc loop

Alexey.

Responses

3 Replies
daniel kim

Hi,

I found below link and would suggest you to check it. and I would suggest you to post the query to tizen mailing list.

  http://sourceforge.net/p/enlightenment/mailman/message/28020667/

Regards

Jean Yang

Hi,

  Just found two links of the same issue, you can reference on them, but maybe not get resolved.

https://developer.tizen.org/forums/general-support/usb-camera-not-lauching-camera-app

https://developer.tizen.org/forums/web-application-development/unable-install-music-app-on-device-tizenprivilege-error-installation-has-failed-ace

  Let's take a look at the definition of the function evas_object_smart_need_recalculate_set().

/**
 * @internal
 * @brief   Sets or unsets the flag signalling that a given smart object needs to
 *          get recalculated.
 *
 * @if MOBILE @since_tizen 2.3
 * @elseif WEARABLE @since_tizen 2.3.1
 * @endif
 *
 * @remarks If this flag is set, then the @c calculate() smart function of @a
 *          obj is called, if one is provided, during rendering phase of
 *          Evas (see evas_render()), after which this flag is
 *          automatically unset.
 *
 * @remarks If that smart function is not provided for the given object, this
 *          flag is left unchanged.
 *
 * @remarks Just setting this flag does not make the canvas' whole scene
 *          dirty, by itself, and evas_render() has no effect. To
 *          force that, use evas_object_smart_changed(), that also
 *          automatically calls this function, with
 *          #EINA_TRUE as parameter.
 *
 * @param[in]   obj    The smart object
 * @param[in]   value  Set #EINA_TRUE to recalculate the smart object, \n
 *                 otherwise set #EINA_FALSE to not recalculate the smart object
 *
 * @see evas_object_smart_need_recalculate_get()
 * @see evas_object_smart_calculate()
 * @see evas_smart_objects_calculate()
 */
EAPI void         evas_object_smart_need_recalculate_set(Evas_Object *obj, Eina_Bool value) EINA_ARG_NONNULL(1);

 

  To exclude the warning for your native app, you need to know what is smart object firstly, then to see what special smart object you used in your applicaiton, try to remove those objects one by one from your code, then to see if this warning still exist.

  Please reference to the tutorial: https://developer.tizen.org/development/guides/native-application/ui-framework/evas

  Find the section "Primitive Smart Objects" where introduce the smart object. Table, grid, box are all smart objects.

 

 

Alex Dem

Hi all,
Thank you for suggestions!
Alexey.