This is an automated email from the git hooks/post-receive script.

guillem pushed a commit to branch main
in repository dpkg.

View the commit online:
https://git.dpkg.org/cgit/dpkg/dpkg.git/commit/?id=2294b1ae6f0b47d000105f3d677d7b16341a1e7a

commit 2294b1ae6f0b47d000105f3d677d7b16341a1e7a
Author: Guillem Jover <[email protected]>
AuthorDate: Mon Jul 22 16:00:07 2024 +0200

    libdpkg: Add new varbuf_set_*fmt() functions
---
 lib/dpkg/libdpkg.map |  2 ++
 lib/dpkg/varbuf.c    | 20 ++++++++++++++++++++
 lib/dpkg/varbuf.h    |  4 ++++
 3 files changed, 26 insertions(+)

diff --git a/lib/dpkg/libdpkg.map b/lib/dpkg/libdpkg.map
index 0b69c39ff..2980769ed 100644
--- a/lib/dpkg/libdpkg.map
+++ b/lib/dpkg/libdpkg.map
@@ -120,6 +120,8 @@ LIBDPKG_PRIVATE {
        varbuf_str;
        varbuf_set_varbuf;
        varbuf_set_buf;
+       varbuf_set_vfmt;
+       varbuf_set_fmt;
        varbuf_add_varbuf;
        varbuf_add_vfmt;
        varbuf_add_fmt;
diff --git a/lib/dpkg/varbuf.c b/lib/dpkg/varbuf.c
index 4a38b47cc..690fcc298 100644
--- a/lib/dpkg/varbuf.c
+++ b/lib/dpkg/varbuf.c
@@ -119,6 +119,26 @@ varbuf_set_varbuf(struct varbuf *v, struct varbuf *other)
        varbuf_set_buf(v, other->buf, other->used);
 }
 
+int
+varbuf_set_vfmt(struct varbuf *v, const char *fmt, va_list args)
+{
+       varbuf_reset(v);
+       return varbuf_add_vfmt(v, fmt, args);
+}
+
+int
+varbuf_set_fmt(struct varbuf *v, const char *fmt, ...)
+{
+       va_list args;
+       int n;
+
+       va_start(args, fmt);
+       n = varbuf_set_vfmt(v, fmt, args);
+       va_end(args);
+
+       return n;
+}
+
 void
 varbuf_add_varbuf(struct varbuf *v, const struct varbuf *other)
 {
diff --git a/lib/dpkg/varbuf.h b/lib/dpkg/varbuf.h
index 3d28c1096..74a4c3fe1 100644
--- a/lib/dpkg/varbuf.h
+++ b/lib/dpkg/varbuf.h
@@ -90,6 +90,10 @@ void varbuf_set_varbuf(struct varbuf *v, struct varbuf 
*other);
 void varbuf_set_buf(struct varbuf *v, const void *buf, size_t size);
 #define varbuf_set_str(v, s) varbuf_set_buf(v, s, strlen(s))
 #define varbuf_set_strn(v, s, n) varbuf_set_buf(v, s, strnlen(s, n))
+int varbuf_set_vfmt(struct varbuf *v, const char *fmt, va_list args)
+       DPKG_ATTR_VPRINTF(2);
+int varbuf_set_fmt(struct varbuf *v, const char *fmt, ...)
+       DPKG_ATTR_PRINTF(2);
 
 void varbuf_add_varbuf(struct varbuf *v, const struct varbuf *other);
 void varbuf_add_char(struct varbuf *v, int c);

-- 
Dpkg.Org's dpkg

Reply via email to