diff mbox series

[4/4] simutil: Make sure set_length on the parent succeeds

Message ID 20240229180746.1671015-4-denkenz@gmail.com (mailing list archive)
State Accepted
Commit 07f48b23e3877ef7d15a7b0b8b79d32ad0a3607e
Headers show
Series [1/4] voicecall: Drop unused GError variables | expand

Commit Message

Denis Kenzior Feb. 29, 2024, 6:07 p.m. UTC
---
 src/simutil.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)
diff mbox series

Patch

diff --git a/src/simutil.c b/src/simutil.c
index a4a8f8c4b230..543ab9962ef2 100644
--- a/src/simutil.c
+++ b/src/simutil.c
@@ -588,8 +588,9 @@  gboolean ber_tlv_builder_set_length(struct ber_tlv_builder *builder,
 	if (new_pos > builder->max)
 		return FALSE;
 
-	if (builder->parent)
-		ber_tlv_builder_set_length(builder->parent, new_pos);
+	if (builder->parent &&
+			!ber_tlv_builder_set_length(builder->parent, new_pos))
+		return FALSE;
 
 	builder->len = new_len;
 
@@ -730,9 +731,9 @@  gboolean comprehension_tlv_builder_set_length(
 	if (builder->pos + new_ctlv_len > builder->max)
 		return FALSE;
 
-	if (builder->parent)
-		ber_tlv_builder_set_length(builder->parent,
-						builder->pos + new_ctlv_len);
+	if (builder->parent && !ber_tlv_builder_set_length(builder->parent,
+						builder->pos + new_ctlv_len))
+		return FALSE;
 
 	len = MIN(builder->len, new_len);
 	if (len > 0 && new_len_size != len_size)