1
0
mirror of https://github.com/stefanocasazza/ULib.git synced 2025-09-28 19:05:55 +08:00
This commit is contained in:
stefanocasazza 2017-06-22 13:44:26 +02:00
parent 8b7607d472
commit 22d6e64fd1
8 changed files with 62 additions and 32 deletions

View File

@ -55,7 +55,7 @@ UString result;
#ifdef AS_cpoll_cppsp_DO
char* s = UClientImage_Base::wbuffer->data();
char* ptr = s;
char* ptr = UClientImage_Base::wbuffer->end();
uint32_t sz = result.size();
u_put_unalignedp32(ptr, U_MULTICHAR_CONSTANT32('{','"','i','d'));

View File

@ -53,8 +53,10 @@ static void usp_end_mfortune()
-->
<!doctype html><html><head><title>Fortunes</title></head><body><table><tr><th>id</th><th>message</th></tr><!--#code
Fortune* item;
uint32_t i, n;
UString result;
uint32_t i, n, sz;
char* s = UClientImage_Base::wbuffer->data();
char* ptr = UClientImage_Base::wbuffer->end();
U_NEW(Fortune, item, Fortune(*pfortune2add));
@ -64,12 +66,12 @@ pvfortune->push_back(item);
for (i = 0, n = mc->vitem.size(); i < n; ++i)
{
result.clear();
(void) U_JFIND(mc->vitem[i], "message", result);
U_NEW(Fortune, item, Fortune(i+1, result));
result.clear();
pvfortune->push_back(item);
}
@ -81,13 +83,26 @@ for (i = 0, ++n; i < n; ++i)
UXMLEscape::encode(elem->message, *pencoded);
USP_PRINTF_ADD(
"<tr>"
"<td>%u</td>"
"<td>%v</td>"
"</tr>",
elem->id, pencoded->rep);
sz = pencoded->size();
u_put_unalignedp64(ptr, U_MULTICHAR_CONSTANT64('<','t','r','>','<','t','d','>'));
ptr = u_num2str32(elem->id, ptr+8);
u_put_unalignedp64(ptr, U_MULTICHAR_CONSTANT64('<','/','t','d','>','<','t','d'));
ptr += 8;
*ptr++ = '>';
(void) memcpy(ptr, pencoded->data(), sz);
ptr += sz;
u_put_unalignedp64(ptr, U_MULTICHAR_CONSTANT64('<','/','t','d','>','<','/','t'));
u_put_unalignedp16(ptr+8, U_MULTICHAR_CONSTANT16('d','>'));
ptr += 16;
}
UClientImage_Base::wbuffer->size_adjust(ptr - s);
pvfortune->clear();
--></table></body></html>

View File

@ -63,10 +63,10 @@ UString rnumber;
int i = 0, num_queries = UHTTP::getFormFirstNumericValue(1, 500);
#ifdef AS_cpoll_cppsp_DO
UClientImage_Base::wbuffer->setBuffer(36U * num_queries);
(void) UClientImage_Base::wbuffer->reserve(36U * num_queries);
char* s = UClientImage_Base::wbuffer->data();
char* ptr = s;
char* ptr = UClientImage_Base::wbuffer->end();
*ptr++ = '[';
#endif
@ -75,8 +75,6 @@ while (true)
{
(void) mc->findOne(id = u_get_num_random(10000-1), query);
rnumber.clear();
(void) U_JFIND(mc->vitem[0], "randomNumber", rnumber);
#ifdef AS_cpoll_cppsp_DO
@ -103,6 +101,8 @@ while (true)
pvworld_query->push_back(pworld);
#endif
rnumber.clear();
if (++i == num_queries) break;
#ifdef AS_cpoll_cppsp_DO

View File

@ -63,10 +63,10 @@ uint32_t id, rnum;
int i = 0, num_queries = UHTTP::getFormFirstNumericValue(1, 500);
#ifdef AS_cpoll_cppsp_DO
UClientImage_Base::wbuffer->setBuffer(36U * num_queries);
(void) UClientImage_Base::wbuffer->reserve(36U * num_queries);
char* s = UClientImage_Base::wbuffer->data();
char* ptr = s;
char* ptr = UClientImage_Base::wbuffer->end();
*ptr++ = '[';
#endif

View File

@ -55,7 +55,7 @@ UString result;
#ifdef AS_cpoll_cppsp_DO
char* s = UClientImage_Base::wbuffer->data();
char* ptr = s;
char* ptr = UClientImage_Base::wbuffer->end();
uint32_t sz = result.size();
u_put_unalignedp32(ptr, U_MULTICHAR_CONSTANT32('{','"','i','d'));

View File

@ -53,8 +53,10 @@ static void usp_end_mfortune()
-->
<!doctype html><html><head><title>Fortunes</title></head><body><table><tr><th>id</th><th>message</th></tr><!--#code
Fortune* item;
uint32_t i, n;
UString result;
uint32_t i, n, sz;
char* s = UClientImage_Base::wbuffer->data();
char* ptr = UClientImage_Base::wbuffer->end();
U_NEW(Fortune, item, Fortune(*pfortune2add));
@ -64,12 +66,12 @@ pvfortune->push_back(item);
for (i = 0, n = mc->vitem.size(); i < n; ++i)
{
result.clear();
(void) U_JFIND(mc->vitem[i], "message", result);
U_NEW(Fortune, item, Fortune(i+1, result));
result.clear();
pvfortune->push_back(item);
}
@ -81,13 +83,26 @@ for (i = 0, ++n; i < n; ++i)
UXMLEscape::encode(elem->message, *pencoded);
USP_PRINTF_ADD(
"<tr>"
"<td>%u</td>"
"<td>%v</td>"
"</tr>",
elem->id, pencoded->rep);
sz = pencoded->size();
u_put_unalignedp64(ptr, U_MULTICHAR_CONSTANT64('<','t','r','>','<','t','d','>'));
ptr = u_num2str32(elem->id, ptr+8);
u_put_unalignedp64(ptr, U_MULTICHAR_CONSTANT64('<','/','t','d','>','<','t','d'));
ptr += 8;
*ptr++ = '>';
(void) memcpy(ptr, pencoded->data(), sz);
ptr += sz;
u_put_unalignedp64(ptr, U_MULTICHAR_CONSTANT64('<','/','t','d','>','<','/','t'));
u_put_unalignedp16(ptr+8, U_MULTICHAR_CONSTANT16('d','>'));
ptr += 16;
}
UClientImage_Base::wbuffer->size_adjust(ptr - s);
pvfortune->clear();
--></table></body></html>

View File

@ -63,10 +63,10 @@ UString rnumber;
int i = 0, num_queries = UHTTP::getFormFirstNumericValue(1, 500);
#ifdef AS_cpoll_cppsp_DO
UClientImage_Base::wbuffer->setBuffer(36U * num_queries);
(void) UClientImage_Base::wbuffer->reserve(36U * num_queries);
char* s = UClientImage_Base::wbuffer->data();
char* ptr = s;
char* ptr = UClientImage_Base::wbuffer->end();
*ptr++ = '[';
#endif
@ -75,8 +75,6 @@ while (true)
{
(void) mc->findOne(id = u_get_num_random(10000-1), query);
rnumber.clear();
(void) U_JFIND(mc->vitem[0], "randomNumber", rnumber);
#ifdef AS_cpoll_cppsp_DO
@ -103,6 +101,8 @@ while (true)
pvworld_query->push_back(pworld);
#endif
rnumber.clear();
if (++i == num_queries) break;
#ifdef AS_cpoll_cppsp_DO

View File

@ -63,10 +63,10 @@ uint32_t id, rnum;
int i = 0, num_queries = UHTTP::getFormFirstNumericValue(1, 500);
#ifdef AS_cpoll_cppsp_DO
UClientImage_Base::wbuffer->setBuffer(36U * num_queries);
(void) UClientImage_Base::wbuffer->reserve(36U * num_queries);
char* s = UClientImage_Base::wbuffer->data();
char* ptr = s;
char* ptr = UClientImage_Base::wbuffer->end();
*ptr++ = '[';
#endif