$OpenBSD: patch-dbus_dbus-address_c,v 1.1 2013/07/20 13:10:29 ajacoutot Exp $

From 32e5cab56a6707cf897f918999720ff7e455255e Mon Sep 17 00:00:00 2001
From: Chengwei Yang <chengwei.yang@intel.com>
Date: Sat, 29 Jun 2013 03:56:20 +0000
Subject: Fix: a non ascii byte will trigger BadAddress error

From cef5a419f4a8f00c6cc0b57d5a01ac347fff9598 Mon Sep 17 00:00:00 2001
From: Chengwei Yang <chengwei.yang@intel.com>
Date: Sat, 29 Jun 2013 04:21:27 +0000
Subject: Test: add a test case for escaping byte > 127

From 00c1c0ac1fb9258747c56ff77a4a35beb44bd994 Mon Sep 17 00:00:00 2001
From: Simon McVittie <simon.mcvittie@collabora.co.uk>
Date: Mon, 01 Jul 2013 11:14:02 +0000
Subject: Make the test for #53499 more obviously correct

--- dbus/dbus-address.c.orig	Sat Jul 20 14:22:50 2013
+++ dbus/dbus-address.c	Sat Jul 20 14:23:09 2013
@@ -104,15 +104,15 @@ dbus_bool_t
 _dbus_address_append_escaped (DBusString       *escaped,
                               const DBusString *unescaped)
 {
-  const char *p;
-  const char *end;
+  const unsigned char *p;
+  const unsigned char *end;
   dbus_bool_t ret;
   int orig_len;
 
   ret = FALSE;
 
   orig_len = _dbus_string_get_length (escaped);
-  p = _dbus_string_get_const_data (unescaped);
+  p = (const unsigned char *) _dbus_string_get_const_data (unescaped);
   end = p + _dbus_string_get_length (unescaped);
   while (p != end)
     {
@@ -678,7 +678,9 @@ static const EscapeTest escape_tests[] = {
   { "Z", "Z" },
   { "a", "a" },
   { "i", "i" },
-  { "z", "z" }
+  { "z", "z" },
+  /* Bug: https://bugs.freedesktop.org/show_bug.cgi?id=53499 */
+  { "%c3%b6", "\xc3\xb6" }
 };
 
 static const char* invalid_escaped_values[] = {
