mirror of
https://github.com/postgres/postgres.git
synced 2025-12-16 16:42:29 +03:00
Allow to avoid NUL-byte management for stringinfos and use in format.c.
In a lot of the places having appendBinaryStringInfo() maintain a trailing NUL byte wasn't actually meaningful, e.g. when appending an integer which can contain 0 in one of its bytes. Removing this yields some small speedup, but more importantly will be more consistent when providing faster variants of pq_sendint etc. Author: Andres Freund Discussion: https://postgr.es/m/20170914063418.sckdzgjfrsbekae4@alap3.anarazel.de
This commit is contained in:
@@ -143,6 +143,14 @@ extern void appendStringInfoSpaces(StringInfo str, int count);
|
||||
extern void appendBinaryStringInfo(StringInfo str,
|
||||
const char *data, int datalen);
|
||||
|
||||
/*------------------------
|
||||
* appendBinaryStringInfoNT
|
||||
* Append arbitrary binary data to a StringInfo, allocating more space
|
||||
* if necessary. Does not ensure a trailing null-byte exists.
|
||||
*/
|
||||
extern void appendBinaryStringInfoNT(StringInfo str,
|
||||
const char *data, int datalen);
|
||||
|
||||
/*------------------------
|
||||
* enlargeStringInfo
|
||||
* Make sure a StringInfo's buffer can hold at least 'needed' more bytes.
|
||||
|
||||
Reference in New Issue
Block a user