+2004-12-18 Havoc Pennington <hp@redhat.com>
+
+ * dbus/dbus-string.c (_dbus_string_validate_ascii): use ISASCII
+ macro
+
+ * dbus/dbus-message.c: fix a comment, and add a still-unused
+ not-implemented function
+
+ * dbus/dbus-marshal.h: fix comment
+
+ * dbus/dbus-internals.h (_DBUS_ISASCII): new macro
+
2004-12-17 Joe Shaw <joeshaw@novell.com>
* mono/DBusType/Byte.cs, mono/DBusType/Int32.cs,
#undef ABS
#define ABS(a) (((a) < 0) ? -(a) : (a))
+#define _DBUS_ISASCII(c) ((c) != '\0' && (((c) & ~0x7f) == 0))
+
typedef void (* DBusForeachFunction) (void *element,
void *data);
dbus_bool_t _dbus_type_is_valid (int typecode);
-#endif /* DBUS_PROTOCOL_H */
+#endif /* DBUS_MARSHAL_H */
va_end (var_args);
return retval;
+}
+
+/* Swap into our byte order if message isn't already.
+ * Done only when required, which allows the bus to avoid
+ * ever doing this as it routes messages.
+ */
+static void
+_dbus_message_ensure_our_byte_order (DBusMessage *message)
+{
+ if (message->byte_order == DBUS_COMPILER_BYTE_ORDER)
+ return;
+
+
+
+
}
/**
/* FIXME because the service/interface/member/error names are already
* validated to be in the particular ASCII subset, UTF-8 validating
* them could be skipped as a probably-interesting optimization.
- * The UTF-8 validation definitely shows up in profiles.
+ * The UTF-8 validation shows up in callgrind-type profiles but
+ * not so much in sample/time-based profiles.
*/
static dbus_bool_t
decode_header_data (const DBusString *data,
end = s + len;
while (s != end)
{
- if (_DBUS_UNLIKELY (*s == '\0' ||
- ((*s & ~0x7f) != 0)))
+ if (_DBUS_UNLIKELY (!_DBUS_ISASCII (*s)))
return FALSE;
++s;