ui-stats: cast pointer before checking for zero
We abuse the "void *util" field as a counter and recently started to cast it to a uintptr_t to avoid risking nasal demons by performing arithmetic on a void pointer. However, compilers are also known to do "interesting" things if they know that a pointer is or isn't NULL. Make this safer by checking if the counter (after casting) is non-zero rather than checking if the pointer is non-null. Signed-off-by: John Keeping <john@keeping.me.uk>
Bu işleme şunda yer alıyor:
ebeveyn
a8b9ef8c1c
işleme
bdcbe0922d
@ -184,9 +184,9 @@ static void add_commit(struct string_list *authors, struct commit *commit,
|
||||
period->trunc(date);
|
||||
tmp = xstrdup(period->pretty(date));
|
||||
item = string_list_insert(items, tmp);
|
||||
if (item->util)
|
||||
free(tmp);
|
||||
counter = (uintptr_t *)&item->util;
|
||||
if (*counter)
|
||||
free(tmp);
|
||||
(*counter)++;
|
||||
|
||||
authorstat->total++;
|
||||
|
Yükleniyor…
Yeni konuda referans
Bir kullanıcı engelle