1 |
gienah 13/11/23 11:50:01 |
2 |
|
3 |
Added: |
4 |
libxcb-1.9.1-list-object-has-no-attribute-lenfield_name.patch |
5 |
libxcb-1.9.1-conflicting-types-for-xcb_ge_event_t.patch |
6 |
Log: |
7 |
Part of fix for bug 491496, thanks to Rion for reporting, thanks to gerardo for the libxcb-list-object-has-no-attribute-lenfield_name.patch. libxcb-1.9.1-conflicting-types-for-xcb_ge_event_t.patch by me. Fix bug 472032, thanks to Myckel Habets for reporting. |
8 |
|
9 |
(Portage version: 2.2.7/cvs/Linux x86_64, signed Manifest commit with key 618E971F) |
10 |
|
11 |
Revision Changes Path |
12 |
1.1 x11-libs/libxcb/files/libxcb-1.9.1-list-object-has-no-attribute-lenfield_name.patch |
13 |
|
14 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-libs/libxcb/files/libxcb-1.9.1-list-object-has-no-attribute-lenfield_name.patch?rev=1.1&view=markup |
15 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-libs/libxcb/files/libxcb-1.9.1-list-object-has-no-attribute-lenfield_name.patch?rev=1.1&content-type=text/plain |
16 |
|
17 |
Index: libxcb-1.9.1-list-object-has-no-attribute-lenfield_name.patch |
18 |
=================================================================== |
19 |
diff --git a/src/c_client.py b/src/c_client.py |
20 |
index ec66223..942e78a 100644 |
21 |
--- a/src/c_client.py |
22 |
+++ b/src/c_client.py |
23 |
@@ -687,10 +687,20 @@ def _c_serialize_helper_switch(context, self, complex_name, |
24 |
switch_expr = _c_accessor_get_expr(self.expr, None) |
25 |
|
26 |
for b in self.bitcases: |
27 |
- bitcase_expr = _c_accessor_get_expr(b.type.expr, None) |
28 |
- code_lines.append(' if(%s & %s) {' % (switch_expr, bitcase_expr)) |
29 |
-# code_lines.append(' printf("switch %s: entering bitcase section %s (mask=%%%%d)...\\n", %s);' % |
30 |
-# (self.name[-1], b.type.name[-1], bitcase_expr)) |
31 |
+ len_expr = len(b.type.expr) |
32 |
+ for n, expr in enumerate(b.type.expr): |
33 |
+ bitcase_expr = _c_accessor_get_expr(expr, None) |
34 |
+ # only one <enumref> in the <bitcase> |
35 |
+ if len_expr == 1: |
36 |
+ code_lines.append(' if(%s & %s) {' % (switch_expr, bitcase_expr)) |
37 |
+ # multiple <enumref> in the <bitcase> |
38 |
+ elif n == 0: # first |
39 |
+ code_lines.append(' if((%s & %s) ||' % (switch_expr, bitcase_expr)) |
40 |
+ elif len_expr == (n + 1): # last |
41 |
+ code_lines.append(' (%s & %s)) {' % (switch_expr, bitcase_expr)) |
42 |
+ else: # between first and last |
43 |
+ code_lines.append(' (%s & %s) ||' % (switch_expr, bitcase_expr)) |
44 |
+ |
45 |
b_prefix = prefix |
46 |
if b.type.has_name: |
47 |
b_prefix = prefix + [(b.c_field_name, '.', b.type)] |
48 |
|
49 |
|
50 |
|
51 |
1.1 x11-libs/libxcb/files/libxcb-1.9.1-conflicting-types-for-xcb_ge_event_t.patch |
52 |
|
53 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-libs/libxcb/files/libxcb-1.9.1-conflicting-types-for-xcb_ge_event_t.patch?rev=1.1&view=markup |
54 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-libs/libxcb/files/libxcb-1.9.1-conflicting-types-for-xcb_ge_event_t.patch?rev=1.1&content-type=text/plain |
55 |
|
56 |
Index: libxcb-1.9.1-conflicting-types-for-xcb_ge_event_t.patch |
57 |
=================================================================== |
58 |
--- libxcb-1.9.1-orig/src/xcb.h 2013-05-31 01:38:01.000000000 +1000 |
59 |
+++ libxcb-1.9.1/src/xcb.h 2013-11-17 18:30:27.664675840 +1100 |
60 |
@@ -143,6 +143,7 @@ |
61 |
* An event as sent by the XGE extension. The length field specifies the |
62 |
* number of 4-byte blocks trailing the struct. |
63 |
*/ |
64 |
+#if 0 |
65 |
typedef struct { |
66 |
uint8_t response_type; /**< Type of the response */ |
67 |
uint8_t pad0; /**< Padding */ |
68 |
@@ -153,6 +154,7 @@ |
69 |
uint32_t pad[5]; /**< Padding */ |
70 |
uint32_t full_sequence; /**< full sequence */ |
71 |
} xcb_ge_event_t; |
72 |
+#endif |
73 |
|
74 |
/** |
75 |
* @brief Generic error. |