]> err.no Git - dpkg/commitdiff
Add varbufdupc().
authorAdam Heath <doogie@debian.org>
Mon, 1 Jan 2001 08:08:56 +0000 (08:08 +0000)
committerAdam Heath <doogie@debian.org>
Mon, 1 Jan 2001 08:08:56 +0000 (08:08 +0000)
ChangeLog
include/dpkg-db.h
lib/varbuf.c

index c44705b9bf12c2cc2fd21454f0cb94699275cb29..6cfcd87f52c1bc256335addf6a69cfd5e280d312 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,8 @@
-Mon Jan  1 02:04:26 CST 2001 Wichert Akkerman <wakkerma@debian.org>
+Mon Jan  1 02:07:47 CST 2001 Adam Heath <doogie@debian.org>
+
+  * lib/varbuf.c, include/dpkg-db.h: Add varbufdupc().
+
+Mon Jan  1 02:04:26 CST 2001 Adam Heath <doogie@debian.org>
 
   * lib/parse.c: Use of PKGIOFF macro was checked in prematurely.
 
index d75cfbe98c5b3e3c600dd7a1e4504917c3881bf6..bece2d0450d4b7c0561ace620bce1975fce716a9 100644 (file)
@@ -225,6 +225,7 @@ const char *versiondescribe(const struct versionrevision*,
 struct varbuf;
 
 extern void varbufaddc(struct varbuf *v, int c);
+extern void varbufdupc(struct varbuf *v, int c, ssize_t s);
 void varbufinit(struct varbuf *v);
 void varbufreset(struct varbuf *v);
 void varbufextend(struct varbuf *v);
index 0c8f1770432307c3e7f685e715d01ebe960fcc2e..ed33837b76fdcadbeca9c9cf964b6a4225fe54f9 100644 (file)
@@ -32,6 +32,17 @@ void varbufaddc(struct varbuf *v, int c) {
   v->buf[v->used++]= c;
 }
 
+void varbufdupc(struct varbuf *v, int c, ssize_t n) {
+  char *b = v->buf + v->used;
+  v->used += n;
+  if (v->used >= v->size) varbufextend(v);
+  while(n) {
+    *b= c;
+    b++; n--;
+  }
+}
+
 void varbufprintf(struct varbuf *v, const char *fmt, ...) {
   int ou, r;
   va_list al;