diff options
Diffstat (limited to 'hcid/dbus-database.c')
| -rw-r--r-- | hcid/dbus-database.c | 26 | 
1 files changed, 9 insertions, 17 deletions
diff --git a/hcid/dbus-database.c b/hcid/dbus-database.c index 90175592..ab3a6938 100644 --- a/hcid/dbus-database.c +++ b/hcid/dbus-database.c @@ -82,7 +82,7 @@ static void exit_callback(const char *name, void *user_data)  		unregister_sdp_record(user_record->handle);  	if (user_record->sender) -		free(user_record->sender); +		g_free(user_record->sender);  	free(user_record);  } @@ -105,11 +105,7 @@ static DBusHandlerResult add_service_record(DBusConnection *conn,  	if (len <= 0)  		return error_invalid_arguments(conn, msg); -	user_record = malloc(sizeof(*user_record)); -	if (!user_record) -		return DBUS_HANDLER_RESULT_NEED_MEMORY; - -	memset(user_record, 0, sizeof(*user_record)); +	user_record = g_new0(struct record_data, 1);  	if (sdp_server_enable) {  		sdp_record = sdp_extract_pdu(record, &scanned); @@ -147,7 +143,7 @@ static DBusHandlerResult add_service_record(DBusConnection *conn,  	sender = dbus_message_get_sender(msg); -	user_record->sender = strdup(sender); +	user_record->sender = g_strdup(sender);  	records = g_slist_append(records, user_record); @@ -175,23 +171,19 @@ static DBusHandlerResult add_service_record_from_xml(DBusConnection *conn,  			DBUS_TYPE_STRING, &record, DBUS_TYPE_INVALID) == FALSE)  		return error_invalid_arguments(conn, msg); -	user_record = malloc(sizeof(*user_record)); -	if (!user_record) -		return DBUS_HANDLER_RESULT_NEED_MEMORY; - -	memset(user_record, 0, sizeof(*user_record)); +	user_record = g_new0(struct record_data, 1);  	sdp_record = sdp_xml_parse_record(record, strlen(record));  	if (!sdp_record) {  		error("Parsing of XML service record failed"); -		free(user_record); +		g_free(user_record);  		return error_failed(conn, msg, EIO);  	}  	if (sdp_server_enable) {  		if (add_record_to_server(sdp_record) < 0) {  			error("Failed to register service record"); -			free(user_record); +			g_free(user_record);  			sdp_record_free(sdp_record);  			return error_failed(conn, msg, EIO);  		} @@ -200,7 +192,7 @@ static DBusHandlerResult add_service_record_from_xml(DBusConnection *conn,  	} else {  		if (register_sdp_record(sdp_record) < 0) {  			error("Failed to register service record"); -			free(user_record); +			g_free(user_record);  			sdp_record_free(sdp_record);  			return error_failed(conn, msg, EIO);  		} @@ -212,7 +204,7 @@ static DBusHandlerResult add_service_record_from_xml(DBusConnection *conn,  	sender = dbus_message_get_sender(msg); -	user_record->sender = strdup(sender); +	user_record->sender = g_strdup(sender);  	records = g_slist_append(records, user_record); @@ -256,7 +248,7 @@ static DBusHandlerResult remove_service_record(DBusConnection *conn,  		unregister_sdp_record(handle);  	if (user_record->sender) -		free(user_record->sender); +		g_free(user_record->sender);  	free(user_record);  | 
