diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/dbus-common.c | 6 | ||||
| -rw-r--r-- | src/sdpd-service.c | 11 | 
2 files changed, 17 insertions, 0 deletions
| diff --git a/src/dbus-common.c b/src/dbus-common.c index 6c15dea2..5d04b481 100644 --- a/src/dbus-common.c +++ b/src/dbus-common.c @@ -300,6 +300,12 @@ void dbus_message_iter_append_dict_entry(DBusMessageIter *dict,  {  	DBusMessageIter entry; +	if (type == DBUS_TYPE_STRING) { +		const char *str = *((const char **) val); +		if (str == NULL) +			return; +	} +  	dbus_message_iter_open_container(dict, DBUS_TYPE_DICT_ENTRY,  							NULL, &entry); diff --git a/src/sdpd-service.c b/src/sdpd-service.c index cd0b97d0..d0df7022 100644 --- a/src/sdpd-service.c +++ b/src/sdpd-service.c @@ -387,6 +387,7 @@ void register_device_id(const uint16_t vendor, const uint16_t product,  int add_record_to_server(const bdaddr_t *src, sdp_record_t *rec)  {  	sdp_data_t *data; +	sdp_list_t *pattern;  	if (rec->handle == 0xffffffff) {  		rec->handle = sdp_next_handle(); @@ -410,6 +411,16 @@ int add_record_to_server(const bdaddr_t *src, sdp_record_t *rec)  		sdp_pattern_add_uuid(rec, &uuid);  	} +	for (pattern = rec->pattern; pattern; pattern = pattern->next) { +		char uuid[32]; + +		if (pattern->data == NULL) +			continue; + +		sdp_uuid2strn((uuid_t *) pattern->data, uuid, sizeof(uuid)); +		debug("Record pattern UUID %s", uuid); +	} +  	update_db_timestamp();  	update_svclass_list(); | 
