libusbgx: Update strings only when writting US English strings.
authorKrzysztof Opasiak <k.opasiak@samsung.com>
Wed, 12 Feb 2014 10:34:01 +0000 (11:34 +0100)
committerKrzysztof Opasiak <k.opasiak@samsung.com>
Tue, 22 Dec 2015 19:33:56 +0000 (20:33 +0100)
Strings in current verison of library are hardcoded to
US English. Functions which set strings are generic and
allow to set other languages, but internal library structures
should be update only when setting US English strings.

Signed-off-by: Krzysztof Opasiak <k.opasiak@samsung.com>
[Port from libusbg and update description]
Signed-off-by: Krzysztof Opasiak <k.opasiak@samsung.com>
src/usbg.c

index 753b930..974077f 100644 (file)
@@ -617,7 +617,9 @@ void usbg_set_gadget_serial_number(struct gadget *g, int lang, char *serno)
 
        mkdir(path, S_IRWXU|S_IRWXG|S_IRWXO);
 
-       strcpy(g->strs.str_ser, serno);
+       /* strings in library are hardcoded to US English for now */
+       if (lang == LANG_US_ENG)
+               strcpy(g->strs.str_ser, serno);
 
        usbg_write_string(path, "", "serialnumber", serno);
 }
@@ -630,7 +632,9 @@ void usbg_set_gadget_manufacturer(struct gadget *g, int lang, char *mnf)
 
        mkdir(path, S_IRWXU|S_IRWXG|S_IRWXO);
 
-       strcpy(g->strs.str_mnf, mnf);
+       /* strings in library are hardcoded to US English for now */
+       if (lang == LANG_US_ENG)
+               strcpy(g->strs.str_mnf, mnf);
 
        usbg_write_string(path, "", "manufacturer", mnf);
 }
@@ -643,7 +647,9 @@ void usbg_set_gadget_product(struct gadget *g, int lang, char *prd)
 
        mkdir(path, S_IRWXU|S_IRWXG|S_IRWXO);
 
-       strcpy(g->strs.str_prd, prd);
+       /* strings in library are hardcoded to US English for now */
+       if (lang == LANG_US_ENG)
+               strcpy(g->strs.str_prd, prd);
 
        usbg_write_string(path, "", "product", prd);
 }
@@ -758,7 +764,9 @@ void usbg_set_config_string(struct config *c, int lang, char *str)
 
        mkdir(path, S_IRWXU|S_IRWXG|S_IRWXO);
 
-       strcpy(c->str_cfg, str);
+       /* strings in library are hardcoded to US English for now */
+       if (lang == LANG_US_ENG)
+               strcpy(c->str_cfg, str);
 
        usbg_write_string(path, "", "configuration", str);
 }