Fix bug 66/223466/2
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:32:06 +0000 (13:32 +0900)
Change-Id: I1ee04b2ca4927f71b5c96c5dcc7988893fc322d6

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)