]> git.ipfire.org Git - thirdparty/kmod.git/commitdiff
shared: turn strbuf_reserve_extra private
authorTobias Stoeckmann <tobias@stoeckmann.org>
Mon, 24 Feb 2025 19:20:50 +0000 (20:20 +0100)
committerLucas De Marchi <lucas.de.marchi@gmail.com>
Fri, 7 Mar 2025 04:57:37 +0000 (22:57 -0600)
We can make it public if it's needed again.

Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
Link: https://github.com/kmod-project/kmod/pull/296
Signed-off-by: Lucas De Marchi <lucas.de.marchi@gmail.com>
shared/strbuf.c
shared/strbuf.h
testsuite/test-strbuf.c

index 8e6dd72d37d81ae136a21dfa3ceebff02e441a49..172558a6275658f79f706900e48a45d60351dff1 100644 (file)
@@ -34,7 +34,7 @@ static bool buf_realloc(struct strbuf *buf, size_t sz)
        return true;
 }
 
-bool strbuf_reserve_extra(struct strbuf *buf, size_t n)
+static bool strbuf_reserve_extra(struct strbuf *buf, size_t n)
 {
        if (uaddsz_overflow(buf->used, n, &n) || n >= SIZE_MAX - BUF_STEP)
                return false;
index 3d97c5dee1549b63689bc2c6cb5232496c6473ca..074699a60a6a0cae43a811ab8e8fd008ac7ed2ee 100644 (file)
@@ -50,12 +50,6 @@ void strbuf_clear(struct strbuf *buf);
  */
 const char *strbuf_str(struct strbuf *buf);
 
-/*
- * Reserve enough space for @n bytes, ensuring additional pushes up to @n bytes
- * don't cause re-allocations
- */
-bool strbuf_reserve_extra(struct strbuf *buf, size_t n);
-
 bool strbuf_pushchar(struct strbuf *buf, char ch);
 size_t strbuf_pushmem(struct strbuf *buf, const char *src, size_t sz);
 static inline size_t strbuf_pushchars(struct strbuf *buf, const char *str)
index c212f5ed7cd4dc6d623df540d32bb7dee54d0054..71aa70041533ff1a68b50ed7aac6d5e80dbfc4ce 100644 (file)
@@ -133,42 +133,15 @@ static int test_strbuf_with_heap(const struct test *t)
 }
 DEFINE_TEST(test_strbuf_with_heap, .description = "test strbuf with heap only");
 
-static int test_strbuf_reserve_extra(const struct test *t)
-{
-       _cleanup_strbuf_ struct strbuf buf;
-       size_t size;
-
-       strbuf_init(&buf);
-       strbuf_reserve_extra(&buf, strlen(TEXT) + 1);
-       size = buf.size;
-       assert_return(size >= strlen(TEXT) + 1, EXIT_FAILURE);
-
-       strbuf_pushchars(&buf, TEXT);
-       strbuf_pushchar(&buf, '\0');
-       assert_return(size == buf.size, EXIT_FAILURE);
-
-       strbuf_clear(&buf);
-       strbuf_pushchars(&buf, TEXT);
-       assert_return(size == buf.size, EXIT_FAILURE);
-
-       return 0;
-}
-DEFINE_TEST(test_strbuf_reserve_extra, .description = "test strbuf_reserve_extra");
-
 static int test_strbuf_pushmem(const struct test *t)
 {
        _cleanup_strbuf_ struct strbuf buf;
-       size_t size;
 
        strbuf_init(&buf);
        strbuf_pushmem(&buf, "", 0);
-       strbuf_reserve_extra(&buf, strlen(TEXT) + 1);
-       size = buf.size;
        strbuf_pushmem(&buf, TEXT, strlen(TEXT) + 1);
 
-       assert_return(size == buf.size, EXIT_FAILURE);
        assert_return(streq(TEXT, strbuf_str(&buf)), EXIT_FAILURE);
-       assert_return(size == buf.size, EXIT_FAILURE);
 
        return 0;
 }
@@ -184,7 +157,8 @@ static int test_strbuf_used(const struct test *t)
        strbuf_pushchars(&buf, TEXT);
        assert_return(strbuf_used(&buf) == strlen(TEXT), EXIT_FAILURE);
 
-       strbuf_reserve_extra(&buf, 1);
+       strbuf_pushchar(&buf, 'a');
+       strbuf_popchar(&buf);
        assert_return(strbuf_used(&buf) == strlen(TEXT), EXIT_FAILURE);
 
        assert_return(streq(TEXT, strbuf_str(&buf)), EXIT_FAILURE);