summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/libfyaml-vlsize-32bit-fixes.patch
blob: 90d388a74dae1a568bc3db58fd12d626f9cedf2b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Combined diffs of commits https://github.com/pantoniou/libfyaml/commit/0982fcefc6a16d4c8cb5b06747d3fc8e630de3ae.diff and https://github.com/pantoniou/libfyaml/commit/9192deaac095f9881cc1e5756dede683f36b09d6.diff.

Upstream-status: <https://github.com/pantoniou/libfyaml/issues/328>

diff --git a/include/libfyaml/libfyaml-vlsize.h b/include/libfyaml/libfyaml-vlsize.h
index 6ccb7ab1..1b950c4c 100644
--- a/include/libfyaml/libfyaml-vlsize.h
+++ b/include/libfyaml/libfyaml-vlsize.h
@@ -816,5 +816,5 @@ fy_decode_size_nocheck(const uint8_t *start, size_t *sizep)
 static inline const uint8_t *
 fy_skip_size(const uint8_t *start, size_t bufsz)
 {
-	return fy_skip_size32(start, bufsz, &sz);
+	return fy_skip_size32(start, bufsz);
 }

 static inline const uint8_t *

diff --git a/include/libfyaml/libfyaml-vlsize.h b/include/libfyaml/libfyaml-vlsize.h
index 1b950c4c..acfd78d3 100644
--- a/include/libfyaml/libfyaml-vlsize.h
+++ b/include/libfyaml/libfyaml-vlsize.h
@@ -810,5 +810,10 @@ fy_decode_size(const uint8_t *start, size_t bufsz, size_t *sizep)
 static inline const uint8_t *
 fy_decode_size_nocheck(const uint8_t *start, size_t *sizep)
 {
-	return fy_decode_size32_nocheck(start, sizep);
+	uint64_t sz;
+	const uint8_t *ret;
+
+	ret = fy_decode_size32_nocheck(start, &sz);
+	*sizep = (size_t)sz;
+	return ret;
 }

 static inline const uint8_t *