46 str->maxlen = initsize;
147 int save_errno = errno;
199 avail =
str->maxlen -
str->len;
205 if (nprinted < (
size_t) avail)
208 str->len += (int) nprinted;
213 str->data[
str->len] =
'\0';
220 return (
int) nprinted;
245 if (
str->len + 1 >=
str->maxlen)
251 str->data[
str->len] =
'\0';
268 memset(&
str->data[
str->len],
' ', count);
270 str->data[
str->len] =
'\0';
297 str->data[
str->len] =
'\0';
351 elog(
ERROR,
"invalid string enlargement request size: %d", needed);
353 fprintf(stderr,
"invalid string enlargement request size: %d\n", needed);
361 (
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
363 errdetail(
"Cannot enlarge string buffer containing %d bytes by %d more bytes.",
367 _(
"string buffer exceeds maximum allowed length (%zu bytes)\n\nCannot enlarge string buffer containing %d bytes by %d more bytes.\n"),
373 needed +=
str->len + 1;
377 if (needed <= str->maxlen)
385 newlen = 2 *
str->maxlen;
386 while (needed > newlen)
399 str->maxlen = newlen;
#define Assert(condition)
#define fprintf(file, fmt, msg)
static void PGresult * res
int errdetail(const char *fmt,...)
int errcode(int sqlerrcode)
int errmsg(const char *fmt,...)
#define ereport(elevel,...)
static void const char * fmt
void * repalloc(void *pointer, Size size)
void pfree(void *pointer)
size_t pvsnprintf(char *buf, size_t len, const char *fmt, va_list args)
int appendStringInfoVA(StringInfo str, const char *fmt, va_list args)
void destroyStringInfo(StringInfo str)
StringInfo makeStringInfo(void)
static void initStringInfoInternal(StringInfo str, int initsize)
void resetStringInfo(StringInfo str)
void appendStringInfo(StringInfo str, const char *fmt,...)
void enlargeStringInfo(StringInfo str, int needed)
StringInfo makeStringInfoExt(int initsize)
void appendBinaryStringInfoNT(StringInfo str, const void *data, int datalen)
void appendBinaryStringInfo(StringInfo str, const void *data, int datalen)
static StringInfo makeStringInfoInternal(int initsize)
void appendStringInfoSpaces(StringInfo str, int count)
void initStringInfoExt(StringInfo str, int initsize)
void appendStringInfoString(StringInfo str, const char *s)
void appendStringInfoChar(StringInfo str, char ch)
void initStringInfo(StringInfo str)
#define STRINGINFO_DEFAULT_SIZE
StringInfoData * StringInfo