mirror of
https://forge.fsky.io/lda/Parsee.git
synced 2026-03-13 21:15:11 +00:00
[MOD] Do some tricks to make formatting nicer
It just didn't make sense on basic messages and Element Android. Fluffy behaved as excepted, though.
This commit is contained in:
parent
0cccef7194
commit
05be7fe249
2 changed files with 19 additions and 8 deletions
|
|
@ -159,16 +159,13 @@ ParseeCleanup(void *datp)
|
||||||
ArrayAdd(to_delete, StrDuplicate(f)); \
|
ArrayAdd(to_delete, StrDuplicate(f)); \
|
||||||
cleaned++; \
|
cleaned++; \
|
||||||
} \
|
} \
|
||||||
Log(LOG_INFO, "Free A, %s [%s][%p]", f, #field, ref); \
|
|
||||||
DbUnlock(data->db, ref); \
|
DbUnlock(data->db, ref); \
|
||||||
Log(LOG_INFO, "Free'd!"); \
|
|
||||||
} \
|
} \
|
||||||
DbListFree(field##_list); \
|
DbListFree(field##_list); \
|
||||||
\
|
\
|
||||||
for (j = 0; j < ArraySize(to_delete); j++) \
|
for (j = 0; j < ArraySize(to_delete); j++) \
|
||||||
{ \
|
{ \
|
||||||
field = ArrayGet(to_delete, j); \
|
field = ArrayGet(to_delete, j); \
|
||||||
Log(LOG_INFO, "%s (%ss)", field, #field"s"); \
|
|
||||||
if (cleaned > threshold) \
|
if (cleaned > threshold) \
|
||||||
{ \
|
{ \
|
||||||
DbDelete(data->db, 4, "chats", chat, #field"s", field); \
|
DbDelete(data->db, 4, "chats", chat, #field"s", field); \
|
||||||
|
|
@ -239,9 +236,7 @@ ParseeCleanup(void *datp)
|
||||||
CleanupField(event, 3 HOURS, 500);
|
CleanupField(event, 3 HOURS, 500);
|
||||||
CleanupField(id, 3 HOURS, 500);
|
CleanupField(id, 3 HOURS, 500);
|
||||||
|
|
||||||
Log(LOG_INFO, "Free B %p", ref);
|
|
||||||
DbUnlock(data->db, ref);
|
DbUnlock(data->db, ref);
|
||||||
Log(LOG_INFO, "Free'd!");
|
|
||||||
}
|
}
|
||||||
DbListFree(chats);
|
DbListFree(chats);
|
||||||
Log(LOG_DEBUG, "Cleant up %d entries...", entries);
|
Log(LOG_DEBUG, "Cleant up %d entries...", entries);
|
||||||
|
|
|
||||||
|
|
@ -399,21 +399,37 @@ ShoveXML(XEP393Element *element, XMLElement *xmlparent)
|
||||||
char *
|
char *
|
||||||
XEP393ToXMLString(XEP393Element *xepd)
|
XEP393ToXMLString(XEP393Element *xepd)
|
||||||
{
|
{
|
||||||
XMLElement *root;
|
XMLElement *root, *act_root;
|
||||||
|
XMLElement *child;
|
||||||
|
|
||||||
Stream *writer;
|
Stream *writer;
|
||||||
char *ret = NULL;
|
char *ret = NULL;
|
||||||
|
size_t i, children;
|
||||||
if (!xepd)
|
if (!xepd)
|
||||||
{
|
{
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
root = XMLCreateTag("span");
|
root = XMLCreateTag("span");
|
||||||
|
act_root = root;
|
||||||
ShoveXML(xepd, root);
|
ShoveXML(xepd, root);
|
||||||
|
|
||||||
writer = StrStreamWriter(&ret);
|
writer = StrStreamWriter(&ret);
|
||||||
XMLEncode(writer, root);
|
children = ArraySize(root->children);
|
||||||
XMLFreeElement(root);
|
|
||||||
|
child = ArrayGet(root->children, 0);
|
||||||
|
if (children == 1 && StrEquals(child->name, "p"))
|
||||||
|
{
|
||||||
|
children = ArraySize(child->children);
|
||||||
|
root = child;
|
||||||
|
}
|
||||||
|
for (i = 0; i < children; i++)
|
||||||
|
{
|
||||||
|
child = ArrayGet(root->children, i);
|
||||||
|
|
||||||
|
XMLEncode(writer, child);
|
||||||
|
}
|
||||||
|
XMLFreeElement(act_root);
|
||||||
StreamFlush(writer);
|
StreamFlush(writer);
|
||||||
StreamClose(writer);
|
StreamClose(writer);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue