File: gcc-14.patch

package info (click to toggle)
libexplain 1.4.D001-17
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 42,248 kB
  • sloc: ansic: 156,043; makefile: 47,892; sh: 16,304; yacc: 1,898; awk: 245
file content (102 lines) | stat: -rw-r--r-- 3,603 bytes parent folder | download | duplicates (2)
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
Author: Andreas Beckmann <anbe@debian.org>
Description: fix building with GCC 14

--- a/libexplain/buffer/v4l2_bt_timings.c
+++ b/libexplain/buffer/v4l2_bt_timings.c
@@ -18,6 +18,7 @@
 
 #include <libexplain/ac/linux/videodev2.h>
 
+#include <libexplain/buffer/int8.h>
 #include <libexplain/buffer/int32_t.h>
 #include <libexplain/buffer/int64_t.h>
 #include <libexplain/buffer/v4l2_bt_timings.h>
@@ -99,10 +100,10 @@ explain_buffer_v4l2_bt_timings(explain_s
         explain_string_buffer_puts(sb, ", il_vbackporch = ");
         explain_buffer_uint32_t(sb, data->il_vbackporch);
     }
-    if (!explain_uint32_array_all_zero(data->reserved, SIZEOF(data->reserved)))
+    if (!explain_uint8_array_all_zero(data->reserved, SIZEOF(data->reserved)))
     {
         explain_string_buffer_puts(sb, ", reserved = ");
-        explain_buffer_uint32_array(sb, data->reserved, SIZEOF(data->reserved));
+        explain_buffer_uint8_array(sb, data->reserved, SIZEOF(data->reserved));
     }
     explain_string_buffer_puts(sb, " }");
 }
--- a/libexplain/buffer/int8.c
+++ b/libexplain/buffer/int8.c
@@ -94,4 +94,18 @@ explain_buffer_uint8_star(explain_string
 }
 
 
+int
+explain_uint8_array_all_zero(const unsigned char *data, size_t data_size)
+{
+    while (data_size > 0)
+    {
+        if (*data)
+            return 0;
+        ++data;
+        --data_size;
+    }
+    return 1;
+}
+
+
 /* vim: set ts=8 sw=4 et : */
--- a/libexplain/buffer/int8.h
+++ b/libexplain/buffer/int8.h
@@ -73,5 +73,18 @@ void explain_buffer_uint8(explain_string
 void explain_buffer_uint8_star(explain_string_buffer_t *sb,
     const unsigned char *data, size_t data_size);
 
+#define explain_buffer_uint8_array explain_buffer_uint8_star
+
+/**
+  * The explain_uint8_array_all_zero function may be used to
+  * test an uint8 array, to see if all the values are zero.
+  *
+  * @param data
+  *     The uint8 array to be tested.
+  * @param data_size
+  *     The number of elements in the array to be tested.
+  */
+int explain_uint8_array_all_zero(const unsigned char *data, size_t data_size);
+
 #endif /* LIBEXPLAIN_BUFFER_INT8_H */
 /* vim: set ts=8 sw=4 et : */
--- a/libexplain/buffer/v4l2_framebuffer.c
+++ b/libexplain/buffer/v4l2_framebuffer.c
@@ -45,7 +45,7 @@ explain_buffer_v4l2_framebuffer(explain_
     explain_string_buffer_puts(sb, ", base = ");
     explain_buffer_pointer(sb, data->base);
     explain_string_buffer_puts(sb, ", fmt = ");
-    explain_buffer_v4l2_pix_format(sb, &data->fmt);
+    explain_buffer_v4l2_pix_format(sb, (const struct v4l2_pix_format *)&data->fmt);
     explain_string_buffer_puts(sb, " }");
 }
 
--- a/libexplain/buffer/v4l2_requestbuffers.c
+++ b/libexplain/buffer/v4l2_requestbuffers.c
@@ -18,6 +18,7 @@
 
 #include <libexplain/ac/linux/videodev2.h>
 
+#include <libexplain/buffer/int8.h>
 #include <libexplain/buffer/int32_t.h>
 #include <libexplain/buffer/v4l2_buf_type.h>
 #include <libexplain/buffer/v4l2_memory.h>
@@ -45,10 +46,10 @@ explain_buffer_v4l2_requestbuffers(expla
     explain_buffer_v4l2_buf_type(sb, data->type);
     explain_string_buffer_puts(sb, ", memory = ");
     explain_buffer_v4l2_memory(sb, data->memory);
-    if (!explain_uint32_array_all_zero(data->reserved, SIZEOF(data->reserved)))
+    if (!explain_uint8_array_all_zero(data->reserved, SIZEOF(data->reserved)))
     {
         explain_string_buffer_puts(sb, ", reserved = ");
-        explain_buffer_uint32_array(sb, data->reserved, SIZEOF(data->reserved));
+        explain_buffer_uint8_array(sb, data->reserved, SIZEOF(data->reserved));
     }
     explain_string_buffer_puts(sb, " }");
 }