File obex-data-server-openobex_EnumerateInterfaces.patch of Package obex-data-server

--- src/ods-obex.c
+++ src/ods-obex.c
@@ -400,7 +400,7 @@
                              gpointer user_data, GError **error)
 {
 	gint ret;
-	obex_interface_t *obex_intf;
+	obex_interface_t *obex_intf = NULL;
 	int interfaces_num;
 
 	/* call OBEX_Init, setup USB Transport here */
@@ -412,14 +412,15 @@
 		goto err;
 	}
 
-	interfaces_num = OBEX_FindInterfaces(obex_context->obex_handle, &obex_intf);
+	interfaces_num = OBEX_EnumerateInterfaces(obex_context->obex_handle);
 	if (intf_num >= interfaces_num) {
 		g_set_error (error, ODS_ERROR, ODS_ERROR_FAILED, "Invalid interface number");
 		goto err;
 	}
+	obex_intf = OBEX_GetInterfaceByIndex(obex_context->obex_handle, intf_num);
 
 	OBEX_SetUserData (obex_context->obex_handle, user_data);
-	ret = OBEX_InterfaceConnect(obex_context->obex_handle, &obex_intf[intf_num]);
+	ret = OBEX_InterfaceConnect(obex_context->obex_handle, obex_intf);
 	if (ret < 0) {
 		g_set_error (error, ODS_ERROR, ODS_ERROR_FAILED, "USB setup failed");
 		goto err;
openSUSE Build Service is sponsored by