coregl_tracepath: Copy name with the real size 70/85670/4
authorZhaowei Yuan <zhaowei.yuan@samsung.com>
Thu, 25 Aug 2016 21:54:32 +0000 (05:54 +0800)
committerGwan-gyeong Mun <kk.moon@samsung.com>
Fri, 26 Aug 2016 12:12:39 +0000 (05:12 -0700)
Memory region newitm->name is new allocated here
whose content is uncertain, so the result of
strlen(newitm->name) is 0 or a random number

Signed-off-by: Zhaowei Yuan <zhaowei.yuan@samsung.com>
Change-Id: I9a08350c2f2326089101f3cc8df74077dd3dd37d

src/modules/tracepath/coregl_tracepath.c

index 63a1cb9..f3a5a28 100644 (file)
@@ -674,7 +674,7 @@ _get_trace_data(Trace_Data **ftd_table, size_t td_size, const char *name)
        } else {
                Trace_Data *newitm = NULL;
                newitm = (Trace_Data *)calloc(1, td_size);
-               strncpy(newitm->name, name, strlen(newitm->name));
+               strncpy(newitm->name, name, strlen(name) < (sizeof(newitm->name) -1) ? strlen(name) : (sizeof(newitm->name) -1));
                newitm->next = NULL;
 
                if (prev != NULL) {