From 095193a9905caff27509a299d895d399d42c06aa Mon Sep 17 00:00:00 2001 From: Mattias Andrée Date: Sun, 21 Dec 2025 14:08:57 +0100 Subject: Fix truncation issue in libcmap_sprintf_range, and add LIBCMAP_ULTIMATE_CODEPOINT and LIBCMAP_UNIVERSE_RANGE MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mattias Andrée --- libcmap_sprint_range.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'libcmap_sprint_range.c') diff --git a/libcmap_sprint_range.c b/libcmap_sprint_range.c index 800fee5..64d762a 100644 --- a/libcmap_sprint_range.c +++ b/libcmap_sprint_range.c @@ -1,10 +1,14 @@ /* See LICENSE file for copyright and license details. */ -#include "libcmap.h" -#include +#include "common.h" int libcmap_sprint_range(char *buf, const struct libcmap_range *range, const char *endash) { - return libcmap_snprint_range(buf, buf ? SIZE_MAX : (size_t)0, range, endash); + if (!buf) + return libcmap_snprint_range(NULL, 0, range, endash); + else if (range->first == range->last) + return sprintf(buf, SINGLETON_RANGE_FMT, SINGLETON_RANGE_ARGS(range)); + else + return sprintf(buf, RANGE_FMT, RANGE_ARGS(range, endash)); } -- cgit v1.3.1