board: fix parameter of get_deviec_serial_number() 50/260050/1 accepted/tizen/unified/20210621.123237 submit/tizen/20210618.075427
authorYoungjae Cho <y0.cho@samsung.com>
Fri, 18 Jun 2021 03:16:35 +0000 (12:16 +0900)
committerYoungjae Cho <y0.cho@samsung.com>
Fri, 18 Jun 2021 03:16:35 +0000 (12:16 +0900)
Change-Id: Ib7303ad9f8fdac2784e94285149b20ec0286b732
Signed-off-by: Youngjae Cho <y0.cho@samsung.com>
hw/board/board.c

index 5e3b0c80647d1569eac061e0abb4d54d4a18dffa..fe47c2db5f4db225ce63a014b156085f52096462 100644 (file)
@@ -81,29 +81,21 @@ static int get_serialno_from_cpuinfo(void)
        return -EIO;
 }
 
-static int get_device_serial_number(char **out)
+static int get_device_serial_number(char *buffer, int len)
 {
        int ret;
-       if (info.serial_len > 0 && strlen(info.serial) == info.serial_len) {
-               *out = strdup(info.serial);
-               if (!out) {
-                       _E("Out of memory, strdup failed.");
-                       return -ENOMEM;
-               }
-               return 0;
-       }
 
-       ret = get_serialno_from_cpuinfo();
-       if (ret < 0) {
-               _E("Failed to find serial number.");
-               return ret;
+       if (info.serial_len == 0) {
+               ret = get_serialno_from_cpuinfo();
+               if (ret < 0) {
+                       _E("Failed to find serial number.");
+                       return ret;
+               }
        }
 
-       *out = strdup(info.serial);
-       if (!out)
-               _E("Out of memory, strdup failed.");
+       strncpy(buffer, info.serial, len);
 
-       return ret;
+       return 0;
 }
 
 static int board_init(void **data)