]> granicus.if.org Git - strace/commitdiff
count: fix types in sorting comparison callbacks
authorEugene Syromyatnikov <evgsyr@gmail.com>
Sun, 2 Sep 2018 21:05:27 +0000 (23:05 +0200)
committerDmitry V. Levin <ldv@altlinux.org>
Tue, 6 Aug 2019 13:38:20 +0000 (13:38 +0000)
* count.c (time_cmp. syscall_cmp): Change arguments type
to "const void *", change indices cast type to "unsigned int *".
(count cmp): Likewise.  Change count variables type to unsigned int.
(sortfun): Specify types of arguments.

Co-Authored-by: Dmitry V. Levin <ldv@altlinux.org>
count.c

diff --git a/count.c b/count.c
index 561afe448d7d33e18d5214a79d1c35d637f96718..02fb3f039cad97ae4f7addeb02d1185ed925052d 100644 (file)
--- a/count.c
+++ b/count.c
@@ -55,30 +55,35 @@ count_syscall(struct tcb *tcp, const struct timespec *syscall_exiting_ts)
 }
 
 static int
-time_cmp(void *a, void *b)
+time_cmp(const void *a, const void *b)
 {
-       return -ts_cmp(&counts[*((int *) a)].time,
-                      &counts[*((int *) b)].time);
+       const unsigned int *a_int = a;
+       const unsigned int *b_int = b;
+       return -ts_cmp(&counts[*a_int].time, &counts[*b_int].time);
 }
 
 static int
-syscall_cmp(void *a, void *b)
+syscall_cmp(const void *a, const void *b)
 {
-       const char *a_name = sysent[*((int *) a)].sys_name;
-       const char *b_name = sysent[*((int *) b)].sys_name;
+       const unsigned int *a_int = a;
+       const unsigned int *b_int = b;
+       const char *a_name = sysent[*a_int].sys_name;
+       const char *b_name = sysent[*b_int].sys_name;
        return strcmp(a_name ? a_name : "", b_name ? b_name : "");
 }
 
 static int
-count_cmp(void *a, void *b)
+count_cmp(const void *a, const void *b)
 {
-       int     m = counts[*((int *) a)].calls;
-       int     n = counts[*((int *) b)].calls;
+       const unsigned int *a_int = a;
+       const unsigned int *b_int = b;
+       unsigned int m = counts[*a_int].calls;
+       unsigned int n = counts[*b_int].calls;
 
        return (m < n) ? 1 : (m > n) ? -1 : 0;
 }
 
-static int (*sortfun)();
+static int (*sortfun)(const void *, const void *);
 
 void
 set_sortby(const char *sortby)