Fix bug 67/223467/1
authorINSUN PYO <insun.pyo@samsung.com>
Thu, 30 Jan 2020 04:30:45 +0000 (13:30 +0900)
committerINSUN PYO <insun.pyo@samsung.com>
Thu, 30 Jan 2020 04:31:05 +0000 (04:31 +0000)
Change-Id: I1ee04b2ca4927f71b5c96c5dcc7988893fc322d6
(cherry picked from commit 2e5bad8ab1f6280dc4149cc0792604f4df40180f)

hw/usb_gadget.h

index f61f966..06c6ef8 100644 (file)
@@ -127,6 +127,7 @@ static void free_simple_func(struct usb_function *func)
        if (func) {
                free((void *)func->name);
                free((void *)func->instance);
+               free((void *)func->ffs_service);
                free((void *)func->service);
                free(func);
        }
@@ -151,6 +152,12 @@ static int clone_simple_func(struct usb_function *func,
        if (!other->name || !other->instance)
                goto out_nomem;
 
+       if (func->ffs_service) {
+               other->ffs_service = strdup(func->ffs_service);
+               if (!other->ffs_service)
+                       goto out_nomem;
+       }
+
        if (func->service) {
                other->service = strdup(func->service);
                if (!other->service)