+int sbaddstrlen(StringBuf *buf, char *c, size_t len) {
+ int remaining = buf->capacity - buf->len - 1;
+ char *p;
+ int i;
+
+ for(p=c,i=0;i<len;i++,p++) {
+ if(remaining <= 0)
+ return 0;
+
+ remaining--;
+
+ buf->buf[buf->len++] = *p;
+ }
+
+ return 1;
+}
+