usb_client: fix bug 50/172450/1
authorINSUN PYO <insun.pyo@samsung.com>
Wed, 14 Mar 2018 04:45:36 +0000 (13:45 +0900)
committerINSUN PYO <insun.pyo@samsung.com>
Wed, 14 Mar 2018 04:46:36 +0000 (13:46 +0900)
Signed-off-by: INSUN PYO <insun.pyo@samsung.com>
Change-Id: I70670d18ae5ae128ef0785ac79f220e3aa5c42b0

hw/usb_client/usb_client.c

index 4f6baf2..824e562 100644 (file)
@@ -290,9 +290,12 @@ static int legacy_read_config(struct usb_gadget *gadget,
 
        /* count number of functions in this config */
        f_cnt = 1;
-       for (i = 0; buf[i] != '\0'; ++i)
+       for (i = 0; buf[i] != '\0'; ++i) {
                if (buf[i] == sep[0])
                        ++f_cnt;
+               if (buf[i] == '\n')  /* buf ends with it */
+                       buf[i] = 0;
+       }
 
        ret = legacy_alloc_config(f_cnt, &config);
        if (ret)
@@ -306,7 +309,7 @@ static int legacy_read_config(struct usb_gadget *gadget,
                if (!func) {
                        /* new function not added yet to gadget */
                        ret = legacy_alloc_new_func(gadget, fname, &func);
-                       if (!ret)
+                       if (ret)
                                goto free_config;
                }