.
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=782
This commit is contained in:
parent
a3070f9647
commit
532f2047e0
@ -1,129 +0,0 @@
|
|||||||
This patch includes changes of the upstream commits
|
|
||||||
6017365a1d0c1c78fc34a7da63768ee5df5da511 and
|
|
||||||
4f4b92ba7ae9c56cb0f181d5f95d709e085b8bd5 as well as the fix for the size
|
|
||||||
of the gcc builtin type bool also known as _Bool from the include header
|
|
||||||
stdbool.h.
|
|
||||||
|
|
||||||
---
|
|
||||||
src/libsystemd/sd-bus/bus-message.c | 19 +++++++++++++++----
|
|
||||||
src/libsystemd/sd-bus/bus-protocol.h | 1 +
|
|
||||||
src/shared/architecture.h | 22 ++++++++++++++++------
|
|
||||||
3 files changed, 32 insertions(+), 10 deletions(-)
|
|
||||||
|
|
||||||
--- src/libsystemd/sd-bus/bus-message.c
|
|
||||||
+++ src/libsystemd/sd-bus/bus-message.c 2014-09-17 15:55:49.830236907 +0000
|
|
||||||
@@ -2259,14 +2259,25 @@ int bus_message_append_ap(
|
|
||||||
r = sd_bus_message_append_basic(m, *t, &x);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
+ case SD_BUS_TYPE_BOOLEAN: {
|
|
||||||
+ if (sizeof(bool) == sizeof(uint32_t)) {
|
|
||||||
+ uint32_t x;
|
|
||||||
+
|
|
||||||
+ x = va_arg(ap, uint32_t);
|
|
||||||
+ r = sd_bus_message_append_basic(m, *t, &x);
|
|
||||||
+ } else {
|
|
||||||
+ uint8_t x;
|
|
||||||
|
|
||||||
- case SD_BUS_TYPE_BOOLEAN:
|
|
||||||
+ x = (uint8_t) va_arg(ap, int);
|
|
||||||
+ r = sd_bus_message_append_basic(m, *t, &x);
|
|
||||||
+ }
|
|
||||||
+ break;
|
|
||||||
+ }
|
|
||||||
case SD_BUS_TYPE_INT32:
|
|
||||||
case SD_BUS_TYPE_UINT32:
|
|
||||||
case SD_BUS_TYPE_UNIX_FD: {
|
|
||||||
uint32_t x;
|
|
||||||
|
|
||||||
- /* We assume a boolean is the same as int32_t */
|
|
||||||
assert_cc(sizeof(int32_t) == sizeof(int));
|
|
||||||
|
|
||||||
x = va_arg(ap, uint32_t);
|
|
||||||
@@ -3229,7 +3240,7 @@ _public_ int sd_bus_message_read_basic(s
|
|
||||||
|
|
||||||
case SD_BUS_TYPE_BOOLEAN:
|
|
||||||
if (p)
|
|
||||||
- *(int*) p = !!*(uint8_t*) q;
|
|
||||||
+ *(bool*) p = !!*(uint8_t*) q;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case SD_BUS_TYPE_INT16:
|
|
||||||
@@ -3339,7 +3350,7 @@ _public_ int sd_bus_message_read_basic(s
|
|
||||||
|
|
||||||
case SD_BUS_TYPE_BOOLEAN:
|
|
||||||
if (p)
|
|
||||||
- *(int*) p = !!*(uint32_t*) q;
|
|
||||||
+ *(bool*) p = !!*(uint32_t*) q;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case SD_BUS_TYPE_INT16:
|
|
||||||
--- src/libsystemd/sd-bus/bus-protocol.h
|
|
||||||
+++ src/libsystemd/sd-bus/bus-protocol.h 2014-09-17 13:28:12.582235580 +0000
|
|
||||||
@@ -21,6 +21,7 @@
|
|
||||||
along with systemd; If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
***/
|
|
||||||
|
|
||||||
+#include <endian.h>
|
|
||||||
|
|
||||||
/* Endianness */
|
|
||||||
|
|
||||||
--- src/shared/architecture.h
|
|
||||||
+++ src/shared/architecture.h 2014-09-17 13:31:46.710735633 +0000
|
|
||||||
@@ -21,6 +21,8 @@
|
|
||||||
along with systemd; If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
***/
|
|
||||||
|
|
||||||
+#include <endian.h>
|
|
||||||
+
|
|
||||||
#include "util.h"
|
|
||||||
|
|
||||||
/* A cleaned up architecture definition */
|
|
||||||
@@ -64,13 +66,13 @@ Architecture uname_architecture(void);
|
|
||||||
#elif defined(__i386__)
|
|
||||||
# define native_architecture() ARCHITECTURE_X86
|
|
||||||
#elif defined(__powerpc64__)
|
|
||||||
-# if defined(WORDS_BIGENDIAN)
|
|
||||||
+# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
# define native_architecture() ARCHITECTURE_PPC64
|
|
||||||
# else
|
|
||||||
# define native_architecture() ARCHITECTURE_PPC64_LE
|
|
||||||
# endif
|
|
||||||
#elif defined(__powerpc__)
|
|
||||||
-# if defined(WORDS_BIGENDIAN)
|
|
||||||
+# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
# define native_architecture() ARCHITECTURE_PPC
|
|
||||||
# else
|
|
||||||
# define native_architecture() ARCHITECTURE_PPC_LE
|
|
||||||
@@ -90,19 +92,27 @@ Architecture uname_architecture(void);
|
|
||||||
#elif defined(__sparc__)
|
|
||||||
# define native_architecture() ARCHITECTURE_SPARC
|
|
||||||
#elif defined(__mips64__)
|
|
||||||
-# define native_architecture() ARCHITECTURE_MIPS64
|
|
||||||
+# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
+# define native_architecture() ARCHITECTURE_MIPS64
|
|
||||||
+# else
|
|
||||||
+# define native_architecture() ARCHITECTURE_MIPS64_LE
|
|
||||||
+# endif
|
|
||||||
#elif defined(__mips__)
|
|
||||||
-# define native_architecture() ARCHITECTURE_MIPS
|
|
||||||
+# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
+# define native_architecture() ARCHITECTURE_MIPS
|
|
||||||
+# else
|
|
||||||
+# define native_architecture() ARCHITECTURE_MIPS_LE
|
|
||||||
+#endif
|
|
||||||
#elif defined(__alpha__)
|
|
||||||
# define native_architecture() ARCHITECTURE_ALPHA
|
|
||||||
#elif defined(__aarch64__)
|
|
||||||
-# if defined(WORDS_BIGENDIAN)
|
|
||||||
+# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
# define native_architecture() ARCHITECTURE_ARM64_BE
|
|
||||||
# else
|
|
||||||
# define native_architecture() ARCHITECTURE_ARM64
|
|
||||||
# endif
|
|
||||||
#elif defined(__arm__)
|
|
||||||
-# if defined(WORDS_BIGENDIAN)
|
|
||||||
+# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
# define native_architecture() ARCHITECTURE_ARM_BE
|
|
||||||
# else
|
|
||||||
# define native_architecture() ARCHITECTURE_ARM
|
|
Loading…
Reference in New Issue
Block a user