gbranden pushed a commit to branch master
in repository groff.

commit 6a1313c8c8f00f2a689a188058f85371a245db3f
Author: G. Branden Robinson <[email protected]>
AuthorDate: Sat Jun 20 04:52:10 2026 -0500

    [libgroff]: Be more fastidious with `string`s.
    
    * src/libs/libgroff/string.cpp (string::clear): Maintain invariant that
      `ptr` is never a null pointer even in `NDEBUG` builds.
---
 ChangeLog                    | 6 ++++++
 src/libs/libgroff/string.cpp | 2 ++
 2 files changed, 8 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index 6a08e0c6c..c870dfa5d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2026-06-20  G. Branden Robinson <[email protected]>
+
+       * src/libs/libgroff/string.cpp (string::clear): Maintain
+       invariant that `ptr` is never a null pointer even in `NDEBUG`
+       builds.
+
 2026-06-16  G. Branden Robinson <[email protected]>
 
        * src/libs/libgroff/string.cpp: Manipulate assert(3)ions
diff --git a/src/libs/libgroff/string.cpp b/src/libs/libgroff/string.cpp
index e391c9871..c891e4a84 100644
--- a/src/libs/libgroff/string.cpp
+++ b/src/libs/libgroff/string.cpp
@@ -348,6 +348,8 @@ void string::clear()
   assert(ptr != 0 /* nullptr */);
   if (ptr != 0 /* nullptr */)
     memset(ptr, 0, sz);
+  else
+    ptr = salloc(0, &sz); // unreachable unless `NDEBUG`
   len = 0;
 }
 

_______________________________________________
groff-commit mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/groff-commit

Reply via email to