aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMichael Albinus2012-06-09 13:13:30 +0200
committerMichael Albinus2012-06-09 13:13:30 +0200
commitff88beb8555488522be667a68d2bad106cf8f43c (patch)
tree828ddc76b8a2fbf197d52dbd79224d0121991480 /src
parente3a3e2133197db5c1c0ba91761ba435fde3c20f2 (diff)
downloademacs-ff88beb8555488522be667a68d2bad106cf8f43c.tar.gz
emacs-ff88beb8555488522be667a68d2bad106cf8f43c.zip
* dbusbind.c (XD_BASIC_DBUS_TYPE): Use dbus_type_is_valid and
dbus_type_is_basic if available. (xd_extract_signed, xd_extract_unsigned): Rename from extract_signed and extract_unsigned, respectively. Adapt callers.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog7
-rw-r--r--src/dbusbind.c47
2 files changed, 36 insertions, 18 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index ef770cbf7ec..563faaae68b 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,10 @@
12012-06-09 Michael Albinus <michael.albinus@gmx.de>
2
3 * dbusbind.c (XD_BASIC_DBUS_TYPE): Use dbus_type_is_valid and
4 dbus_type_is_basic if available.
5 (xd_extract_signed, xd_extract_unsigned): Rename from
6 extract_signed and extract_unsigned, respectively. Adapt callers.
7
12012-06-09 Chong Yidong <cyd@gnu.org> 82012-06-09 Chong Yidong <cyd@gnu.org>
2 9
3 * xfaces.c (face_for_overlay_string): Handle face remapping (Bug#2066). 10 * xfaces.c (face_for_overlay_string): Handle face remapping (Bug#2066).
diff --git a/src/dbusbind.c b/src/dbusbind.c
index e506380e607..d80bb21cd59 100644
--- a/src/dbusbind.c
+++ b/src/dbusbind.c
@@ -147,6 +147,10 @@ static int xd_in_read_queued_messages = 0;
147#endif 147#endif
148 148
149/* Check whether TYPE is a basic DBusType. */ 149/* Check whether TYPE is a basic DBusType. */
150#ifdef HAVE_DBUS_TYPE_IS_VALID
151#define XD_BASIC_DBUS_TYPE(type) \
152 (dbus_type_is_valid (type) && dbus_type_is_basic (type))
153#else
150#ifdef DBUS_TYPE_UNIX_FD 154#ifdef DBUS_TYPE_UNIX_FD
151#define XD_BASIC_DBUS_TYPE(type) \ 155#define XD_BASIC_DBUS_TYPE(type) \
152 ((type == DBUS_TYPE_BYTE) \ 156 ((type == DBUS_TYPE_BYTE) \
@@ -177,6 +181,7 @@ static int xd_in_read_queued_messages = 0;
177 || (type == DBUS_TYPE_OBJECT_PATH) \ 181 || (type == DBUS_TYPE_OBJECT_PATH) \
178 || (type == DBUS_TYPE_SIGNATURE)) 182 || (type == DBUS_TYPE_SIGNATURE))
179#endif 183#endif
184#endif
180 185
181/* This was a macro. On Solaris 2.11 it was said to compile for 186/* This was a macro. On Solaris 2.11 it was said to compile for
182 hours, when optimization is enabled. So we have transferred it into 187 hours, when optimization is enabled. So we have transferred it into
@@ -524,7 +529,7 @@ xd_signature (char *signature, int dtype, int parent_type, Lisp_Object object)
524 529
525/* Convert X to a signed integer with bounds LO and HI. */ 530/* Convert X to a signed integer with bounds LO and HI. */
526static intmax_t 531static intmax_t
527extract_signed (Lisp_Object x, intmax_t lo, intmax_t hi) 532xd_extract_signed (Lisp_Object x, intmax_t lo, intmax_t hi)
528{ 533{
529 CHECK_NUMBER_OR_FLOAT (x); 534 CHECK_NUMBER_OR_FLOAT (x);
530 if (INTEGERP (x)) 535 if (INTEGERP (x))
@@ -552,7 +557,7 @@ extract_signed (Lisp_Object x, intmax_t lo, intmax_t hi)
552 557
553/* Convert X to an unsigned integer with bounds 0 and HI. */ 558/* Convert X to an unsigned integer with bounds 0 and HI. */
554static uintmax_t 559static uintmax_t
555extract_unsigned (Lisp_Object x, uintmax_t hi) 560xd_extract_unsigned (Lisp_Object x, uintmax_t hi)
556{ 561{
557 CHECK_NUMBER_OR_FLOAT (x); 562 CHECK_NUMBER_OR_FLOAT (x);
558 if (INTEGERP (x)) 563 if (INTEGERP (x))
@@ -611,9 +616,10 @@ xd_append_arg (int dtype, Lisp_Object object, DBusMessageIter *iter)
611 616
612 case DBUS_TYPE_INT16: 617 case DBUS_TYPE_INT16:
613 { 618 {
614 dbus_int16_t val = extract_signed (object, 619 dbus_int16_t val =
615 TYPE_MINIMUM (dbus_int16_t), 620 xd_extract_signed (object,
616 TYPE_MAXIMUM (dbus_int16_t)); 621 TYPE_MINIMUM (dbus_int16_t),
622 TYPE_MAXIMUM (dbus_int16_t));
617 int pval = val; 623 int pval = val;
618 XD_DEBUG_MESSAGE ("%c %d", dtype, pval); 624 XD_DEBUG_MESSAGE ("%c %d", dtype, pval);
619 if (!dbus_message_iter_append_basic (iter, dtype, &val)) 625 if (!dbus_message_iter_append_basic (iter, dtype, &val))
@@ -623,8 +629,9 @@ xd_append_arg (int dtype, Lisp_Object object, DBusMessageIter *iter)
623 629
624 case DBUS_TYPE_UINT16: 630 case DBUS_TYPE_UINT16:
625 { 631 {
626 dbus_uint16_t val = extract_unsigned (object, 632 dbus_uint16_t val =
627 TYPE_MAXIMUM (dbus_uint16_t)); 633 xd_extract_unsigned (object,
634 TYPE_MAXIMUM (dbus_uint16_t));
628 unsigned int pval = val; 635 unsigned int pval = val;
629 XD_DEBUG_MESSAGE ("%c %u", dtype, pval); 636 XD_DEBUG_MESSAGE ("%c %u", dtype, pval);
630 if (!dbus_message_iter_append_basic (iter, dtype, &val)) 637 if (!dbus_message_iter_append_basic (iter, dtype, &val))
@@ -634,9 +641,10 @@ xd_append_arg (int dtype, Lisp_Object object, DBusMessageIter *iter)
634 641
635 case DBUS_TYPE_INT32: 642 case DBUS_TYPE_INT32:
636 { 643 {
637 dbus_int32_t val = extract_signed (object, 644 dbus_int32_t val =
638 TYPE_MINIMUM (dbus_int32_t), 645 xd_extract_signed (object,
639 TYPE_MAXIMUM (dbus_int32_t)); 646 TYPE_MINIMUM (dbus_int32_t),
647 TYPE_MAXIMUM (dbus_int32_t));
640 int pval = val; 648 int pval = val;
641 XD_DEBUG_MESSAGE ("%c %d", dtype, pval); 649 XD_DEBUG_MESSAGE ("%c %d", dtype, pval);
642 if (!dbus_message_iter_append_basic (iter, dtype, &val)) 650 if (!dbus_message_iter_append_basic (iter, dtype, &val))
@@ -649,8 +657,9 @@ xd_append_arg (int dtype, Lisp_Object object, DBusMessageIter *iter)
649 case DBUS_TYPE_UNIX_FD: 657 case DBUS_TYPE_UNIX_FD:
650#endif 658#endif
651 { 659 {
652 dbus_uint32_t val = extract_unsigned (object, 660 dbus_uint32_t val =
653 TYPE_MAXIMUM (dbus_uint32_t)); 661 xd_extract_unsigned (object,
662 TYPE_MAXIMUM (dbus_uint32_t));
654 unsigned int pval = val; 663 unsigned int pval = val;
655 XD_DEBUG_MESSAGE ("%c %u", dtype, pval); 664 XD_DEBUG_MESSAGE ("%c %u", dtype, pval);
656 if (!dbus_message_iter_append_basic (iter, dtype, &val)) 665 if (!dbus_message_iter_append_basic (iter, dtype, &val))
@@ -660,9 +669,10 @@ xd_append_arg (int dtype, Lisp_Object object, DBusMessageIter *iter)
660 669
661 case DBUS_TYPE_INT64: 670 case DBUS_TYPE_INT64:
662 { 671 {
663 dbus_int64_t val = extract_signed (object, 672 dbus_int64_t val =
664 TYPE_MINIMUM (dbus_int64_t), 673 xd_extract_signed (object,
665 TYPE_MAXIMUM (dbus_int64_t)); 674 TYPE_MINIMUM (dbus_int64_t),
675 TYPE_MAXIMUM (dbus_int64_t));
666 printmax_t pval = val; 676 printmax_t pval = val;
667 XD_DEBUG_MESSAGE ("%c %"pMd, dtype, pval); 677 XD_DEBUG_MESSAGE ("%c %"pMd, dtype, pval);
668 if (!dbus_message_iter_append_basic (iter, dtype, &val)) 678 if (!dbus_message_iter_append_basic (iter, dtype, &val))
@@ -672,8 +682,9 @@ xd_append_arg (int dtype, Lisp_Object object, DBusMessageIter *iter)
672 682
673 case DBUS_TYPE_UINT64: 683 case DBUS_TYPE_UINT64:
674 { 684 {
675 dbus_uint64_t val = extract_unsigned (object, 685 dbus_uint64_t val =
676 TYPE_MAXIMUM (dbus_uint64_t)); 686 xd_extract_unsigned (object,
687 TYPE_MAXIMUM (dbus_uint64_t));
677 uprintmax_t pval = val; 688 uprintmax_t pval = val;
678 XD_DEBUG_MESSAGE ("%c %"pMu, dtype, pval); 689 XD_DEBUG_MESSAGE ("%c %"pMu, dtype, pval);
679 if (!dbus_message_iter_append_basic (iter, dtype, &val)) 690 if (!dbus_message_iter_append_basic (iter, dtype, &val))
@@ -1271,7 +1282,7 @@ usage: (dbus-message-internal &rest REST) */)
1271 } 1282 }
1272 else /* DBUS_MESSAGE_TYPE_METHOD_RETURN, DBUS_MESSAGE_TYPE_ERROR */ 1283 else /* DBUS_MESSAGE_TYPE_METHOD_RETURN, DBUS_MESSAGE_TYPE_ERROR */
1273 { 1284 {
1274 serial = extract_unsigned (args[3], TYPE_MAXIMUM (dbus_uint32_t)); 1285 serial = xd_extract_unsigned (args[3], TYPE_MAXIMUM (dbus_uint32_t));
1275 count = 4; 1286 count = 4;
1276 } 1287 }
1277 1288