summary refs log tree commit diff
path: root/src/stralloc_catb.c
blob: 8ee0af44e88b69c3b24044873151f6021318affd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
/* Public domain. */

#include "stralloc.h"
#include "byte.h"

int stralloc_catb(stralloc *sa,const char *s,unsigned int n)
{
  if (!sa->s) return stralloc_copyb(sa,s,n);
  if (!stralloc_readyplus(sa,n + 1)) return 0;
  byte_copy(sa->s + sa->len,n,s);
  sa->len += n;
  sa->s[sa->len] = 'Z'; /* ``offensive programming'' */
  return 1;
}