Eina_Stringshare_Node *el;
int hash_num, hash;
+ DBG("str=%p (%.*s), slen=%u", str, slen, str ? str : "", slen);
if (!str) return NULL;
_eina_stringshare_population_add(slen);
if (slen == 0)
return "";
else if (slen == 1)
- return _eina_stringshare_single + ((*str) << 1);
+ return (const char *)_eina_stringshare_single + ((*str) << 1);
else if (slen < 4)
return _eina_stringshare_small_add(str, slen);
Eina_Stringshare_Node *node;
int slen;
+ DBG("str=%p (%s)", str, str ? str : "");
if (!str) return NULL;
/* special cases */
node = _eina_stringshare_node_from_str(str);
node->references++;
+ DBG("str=%p (%s) refs=%u", str, str, node->references);
_eina_stringshare_population_add(node->length);
Eina_Stringshare_Node *node;
int hash_num, slen, hash;
+ DBG("str=%p (%s)", str, str ? str : "");
if (!str) return;
/* special cases */
if (node->references > 1)
{
node->references--;
+ DBG("str=%p (%s) refs=%u", str, str, node->references);
return;
}
+ DBG("str=%p (%s) refs=0, delete.", str, str);
node->references = 0;
slen = node->length;