{
if (hint->id == id)
{
- if (strcmp(hint->val, val) != 0)
+ if (!e_util_strcmp(hint->hint, name))
{
- ELOGF("COMP", "AUX_HINT |Change [pixmap] [%d:%s:%s -> %s]",
+ if (strcmp(hint->val, val) != 0)
+ {
+ ELOGF("COMP", "AUX_HINT |Change [pixmap] [%d:%s:%s -> %s]",
+ e_pixmap_client_get(cp),
+ id, hint->hint, hint->val, val);
+ eina_stringshare_del(hint->val);
+
+ hint->val = eina_stringshare_add(val);
+ hint->changed = EINA_TRUE;
+ hint->deleted = EINA_FALSE;
+ cdata->aux_hint.changed = 1;
+ }
+ }
+ else
+ {
+ // hint's name is not same,
+ // replace hint's name and value
+
+ ELOGF("COMP", "AUX_HINT |Replace [pixmap] [%d:%s:%s -> %s:%s]",
e_pixmap_client_get(cp),
- id, hint->hint, hint->val, val);
+ id, hint->hint, hint->val, name, val);
+ eina_stringshare_del(hint->hint);
eina_stringshare_del(hint->val);
+ hint->hint = eina_stringshare_add(name);
hint->val = eina_stringshare_add(val);
hint->changed = EINA_TRUE;
hint->deleted = EINA_FALSE;