diff options
| author | dundargoc <gocdundar@gmail.com> | 2023-11-12 13:13:58 +0100 |
|---|---|---|
| committer | dundargoc <33953936+dundargoc@users.noreply.github.com> | 2023-11-12 21:26:39 +0100 |
| commit | 353a4be7e84fdc101318215bdcc8a7e780d737fe (patch) | |
| tree | ad75dc836a028d1e3596e9b09ad5d1bc118d0c01 /src/nvim/event | |
| parent | 2a57613b9b4206cc627efa63012aac791b8f89e0 (diff) | |
| download | rneovim-353a4be7e84fdc101318215bdcc8a7e780d737fe.tar.gz rneovim-353a4be7e84fdc101318215bdcc8a7e780d737fe.tar.bz2 rneovim-353a4be7e84fdc101318215bdcc8a7e780d737fe.zip | |
build: remove PVS
We already have an extensive suite of static analysis tools we use,
which causes a fair bit of redundancy as we get duplicate warnings. PVS
is also prone to give false warnings which creates a lot of work to
identify and disable.
Diffstat (limited to 'src/nvim/event')
| -rw-r--r-- | src/nvim/event/libuv_process.c | 12 | ||||
| -rw-r--r-- | src/nvim/event/loop.c | 9 | ||||
| -rw-r--r-- | src/nvim/event/loop.h | 2 | ||||
| -rw-r--r-- | src/nvim/event/multiqueue.c | 3 | ||||
| -rw-r--r-- | src/nvim/event/process.c | 14 | ||||
| -rw-r--r-- | src/nvim/event/rstream.c | 3 | ||||
| -rw-r--r-- | src/nvim/event/signal.c | 3 | ||||
| -rw-r--r-- | src/nvim/event/socket.c | 22 | ||||
| -rw-r--r-- | src/nvim/event/stream.c | 12 | ||||
| -rw-r--r-- | src/nvim/event/time.c | 3 | ||||
| -rw-r--r-- | src/nvim/event/wstream.c | 3 |
11 files changed, 23 insertions, 63 deletions
diff --git a/src/nvim/event/libuv_process.c b/src/nvim/event/libuv_process.c index 1bb0511f12..73dec2bcab 100644 --- a/src/nvim/event/libuv_process.c +++ b/src/nvim/event/libuv_process.c @@ -1,6 +1,3 @@ -// This is an open source non-commercial project. Dear PVS-Studio, please check -// it. PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com - #include <assert.h> #include <stdint.h> #include <uv.h> @@ -68,8 +65,7 @@ int libuv_process_spawn(LibuvProcess *uvproc) #ifdef MSWIN uvproc->uvstdio[0].flags |= proc->overlapped ? UV_OVERLAPPED_PIPE : 0; #endif - uvproc->uvstdio[0].data.stream = STRUCT_CAST(uv_stream_t, - &proc->in.uv.pipe); + uvproc->uvstdio[0].data.stream = (uv_stream_t *)(&proc->in.uv.pipe); } if (!proc->out.closed) { @@ -79,14 +75,12 @@ int libuv_process_spawn(LibuvProcess *uvproc) uvproc->uvstdio[1].flags |= proc->overlapped ? (UV_READABLE_PIPE | UV_OVERLAPPED_PIPE) : 0; #endif - uvproc->uvstdio[1].data.stream = STRUCT_CAST(uv_stream_t, - &proc->out.uv.pipe); + uvproc->uvstdio[1].data.stream = (uv_stream_t *)(&proc->out.uv.pipe); } if (!proc->err.closed) { uvproc->uvstdio[2].flags = UV_CREATE_PIPE | UV_WRITABLE_PIPE; - uvproc->uvstdio[2].data.stream = STRUCT_CAST(uv_stream_t, - &proc->err.uv.pipe); + uvproc->uvstdio[2].data.stream = (uv_stream_t *)(&proc->err.uv.pipe); } else if (proc->fwd_err) { uvproc->uvstdio[2].flags = UV_INHERIT_FD; uvproc->uvstdio[2].data.fd = STDERR_FILENO; diff --git a/src/nvim/event/loop.c b/src/nvim/event/loop.c index ab2524c1a9..3d74fe7d6d 100644 --- a/src/nvim/event/loop.c +++ b/src/nvim/event/loop.c @@ -1,6 +1,3 @@ -// This is an open source non-commercial project. Dear PVS-Studio, please check -// it. PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com - #include <stdbool.h> #include <stdint.h> #include <stdlib.h> @@ -61,9 +58,9 @@ bool loop_uv_run(Loop *loop, int64_t ms, bool once) mode = UV_RUN_NOWAIT; } - do { // -V1044 + do { uv_run(&loop->uv, mode); - } while (ms > 0 && !once && !*timeout_expired); // -V560 + } while (ms > 0 && !once && !*timeout_expired); if (ms > 0) { uv_timer_stop(&loop->poll_timer); @@ -163,7 +160,7 @@ bool loop_close(Loop *loop, bool wait) while (true) { // Run the loop to tickle close-callbacks (which should then free memory). // Use UV_RUN_NOWAIT to avoid a hang. #11820 - uv_run(&loop->uv, didstop ? UV_RUN_DEFAULT : UV_RUN_NOWAIT); // -V547 + uv_run(&loop->uv, didstop ? UV_RUN_DEFAULT : UV_RUN_NOWAIT); if ((uv_loop_close(&loop->uv) != UV_EBUSY) || !wait) { break; } diff --git a/src/nvim/event/loop.h b/src/nvim/event/loop.h index b2265a726d..7b4b724359 100644 --- a/src/nvim/event/loop.h +++ b/src/nvim/event/loop.h @@ -53,8 +53,6 @@ typedef struct loop { } \ } while (0) -// -V:LOOP_PROCESS_EVENTS_UNTIL:547 - // Poll for events until a condition or timeout #define LOOP_PROCESS_EVENTS_UNTIL(loop, multiqueue, timeout, condition) \ do { \ diff --git a/src/nvim/event/multiqueue.c b/src/nvim/event/multiqueue.c index 262d141b26..328fa68806 100644 --- a/src/nvim/event/multiqueue.c +++ b/src/nvim/event/multiqueue.c @@ -1,6 +1,3 @@ -// This is an open source non-commercial project. Dear PVS-Studio, please check -// it. PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com - // Multi-level queue for selective async event processing. // Not threadsafe; access must be synchronized externally. // diff --git a/src/nvim/event/process.c b/src/nvim/event/process.c index d612b503a7..a6646c3a7f 100644 --- a/src/nvim/event/process.c +++ b/src/nvim/event/process.c @@ -1,6 +1,3 @@ -// This is an open source non-commercial project. Dear PVS-Studio, please check -// it. PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com - #include <assert.h> #include <inttypes.h> #include <signal.h> @@ -102,24 +99,21 @@ int process_spawn(Process *proc, bool in, bool out, bool err) } if (in) { - stream_init(NULL, &proc->in, -1, - STRUCT_CAST(uv_stream_t, &proc->in.uv.pipe)); + stream_init(NULL, &proc->in, -1, (uv_stream_t *)&proc->in.uv.pipe); proc->in.internal_data = proc; proc->in.internal_close_cb = on_process_stream_close; proc->refcount++; } if (out) { - stream_init(NULL, &proc->out, -1, - STRUCT_CAST(uv_stream_t, &proc->out.uv.pipe)); + stream_init(NULL, &proc->out, -1, (uv_stream_t *)&proc->out.uv.pipe); proc->out.internal_data = proc; proc->out.internal_close_cb = on_process_stream_close; proc->refcount++; } if (err) { - stream_init(NULL, &proc->err, -1, - STRUCT_CAST(uv_stream_t, &proc->err.uv.pipe)); + stream_init(NULL, &proc->err, -1, (uv_stream_t *)&proc->err.uv.pipe); proc->err.internal_data = proc; proc->err.internal_close_cb = on_process_stream_close; proc->refcount++; @@ -376,7 +370,7 @@ static void flush_stream(Process *proc, Stream *stream) } // Stream can be closed if it is empty. - if (num_bytes == stream->num_bytes) { // -V547 + if (num_bytes == stream->num_bytes) { if (stream->read_cb && !stream->did_eof) { // Stream callback could miss EOF handling if a child keeps the stream // open. But only send EOF if we haven't already. diff --git a/src/nvim/event/rstream.c b/src/nvim/event/rstream.c index a145452afd..4721bbdcb7 100644 --- a/src/nvim/event/rstream.c +++ b/src/nvim/event/rstream.c @@ -1,6 +1,3 @@ -// This is an open source non-commercial project. Dear PVS-Studio, please check -// it. PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com - #include <assert.h> #include <stdbool.h> #include <stddef.h> diff --git a/src/nvim/event/signal.c b/src/nvim/event/signal.c index 8256ca2091..07223be987 100644 --- a/src/nvim/event/signal.c +++ b/src/nvim/event/signal.c @@ -1,6 +1,3 @@ -// This is an open source non-commercial project. Dear PVS-Studio, please check -// it. PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com - #include <stddef.h> #include <uv.h> diff --git a/src/nvim/event/socket.c b/src/nvim/event/socket.c index 52a3c81449..62326de075 100644 --- a/src/nvim/event/socket.c +++ b/src/nvim/event/socket.c @@ -1,6 +1,3 @@ -// This is an open source non-commercial project. Dear PVS-Studio, please check -// it. PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com - #include <assert.h> #include <inttypes.h> #include <stdbool.h> @@ -64,10 +61,10 @@ int socket_watcher_init(Loop *loop, SocketWatcher *watcher, const char *endpoint uv_tcp_init(&loop->uv, &watcher->uv.tcp.handle); uv_tcp_nodelay(&watcher->uv.tcp.handle, true); - watcher->stream = STRUCT_CAST(uv_stream_t, &watcher->uv.tcp.handle); + watcher->stream = (uv_stream_t *)(&watcher->uv.tcp.handle); } else { uv_pipe_init(&loop->uv, &watcher->uv.pipe.handle, 0); - watcher->stream = STRUCT_CAST(uv_stream_t, &watcher->uv.pipe.handle); + watcher->stream = (uv_stream_t *)(&watcher->uv.pipe.handle); } watcher->stream->data = watcher; @@ -102,9 +99,8 @@ int socket_watcher_start(SocketWatcher *watcher, int backlog, socket_cb cb) // contain 0 in this case, unless uv_tcp_getsockname() is used first. uv_tcp_getsockname(&watcher->uv.tcp.handle, (struct sockaddr *)&sas, &(int){ sizeof(sas) }); - uint16_t port = (uint16_t)((sas.ss_family == AF_INET) - ? (STRUCT_CAST(struct sockaddr_in, &sas))->sin_port - : (STRUCT_CAST(struct sockaddr_in6, &sas))->sin6_port); + uint16_t port = (sas.ss_family == AF_INET) ? ((struct sockaddr_in *)(&sas))->sin_port + : ((struct sockaddr_in6 *)(&sas))->sin6_port; // v:servername uses the string from watcher->addr size_t len = strlen(watcher->addr); snprintf(watcher->addr + len, sizeof(watcher->addr) - len, ":%" PRIu16, @@ -142,11 +138,11 @@ int socket_watcher_accept(SocketWatcher *watcher, Stream *stream) uv_stream_t *client; if (watcher->stream->type == UV_TCP) { - client = STRUCT_CAST(uv_stream_t, &stream->uv.tcp); + client = (uv_stream_t *)(&stream->uv.tcp); uv_tcp_init(watcher->uv.tcp.handle.loop, (uv_tcp_t *)client); uv_tcp_nodelay((uv_tcp_t *)client, true); } else { - client = STRUCT_CAST(uv_stream_t, &stream->uv.pipe); + client = (uv_stream_t *)&stream->uv.pipe; uv_pipe_init(watcher->uv.pipe.handle.loop, (uv_pipe_t *)client, 0); } @@ -165,7 +161,7 @@ void socket_watcher_close(SocketWatcher *watcher, socket_close_cb cb) FUNC_ATTR_NONNULL_ARG(1) { watcher->close_cb = cb; - uv_close(STRUCT_CAST(uv_handle_t, watcher->stream), close_cb); + uv_close((uv_handle_t *)watcher->stream, close_cb); } static void connection_event(void **argv) @@ -242,11 +238,11 @@ tcp_retry: uv_pipe_t *pipe = &stream->uv.pipe; uv_pipe_init(&loop->uv, pipe, 0); uv_pipe_connect(&req, pipe, address, connect_cb); - uv_stream = STRUCT_CAST(uv_stream_t, pipe); + uv_stream = (uv_stream_t *)pipe; } status = 1; LOOP_PROCESS_EVENTS_UNTIL(&main_loop, NULL, timeout, status != 1); - if (status == 0) { // -V547 + if (status == 0) { stream_init(NULL, stream, -1, uv_stream); success = true; } else if (is_tcp && addrinfo->ai_next) { diff --git a/src/nvim/event/stream.c b/src/nvim/event/stream.c index 0a4918636a..49b5be23c8 100644 --- a/src/nvim/event/stream.c +++ b/src/nvim/event/stream.c @@ -1,6 +1,3 @@ -// This is an open source non-commercial project. Dear PVS-Studio, please check -// it. PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com - #include <assert.h> #include <stdbool.h> #include <stddef.h> @@ -37,9 +34,8 @@ int stream_set_blocking(int fd, bool blocking) uv_loop_init(&loop); uv_pipe_init(&loop, &stream, 0); uv_pipe_open(&stream, fd); - int retval = uv_stream_set_blocking(STRUCT_CAST(uv_stream_t, &stream), - blocking); - uv_close(STRUCT_CAST(uv_handle_t, &stream), NULL); + int retval = uv_stream_set_blocking((uv_stream_t *)&stream, blocking); + uv_close((uv_handle_t *)&stream, NULL); uv_run(&loop, UV_RUN_NOWAIT); // not necessary, but couldn't hurt. uv_loop_close(&loop); return retval; @@ -71,12 +67,12 @@ void stream_init(Loop *loop, Stream *stream, int fd, uv_stream_t *uvstream) dwMode |= ENABLE_VIRTUAL_TERMINAL_INPUT; SetConsoleMode(stream->uv.tty.handle, dwMode); } - stream->uvstream = STRUCT_CAST(uv_stream_t, &stream->uv.tty); + stream->uvstream = (uv_stream_t *)&stream->uv.tty; } else { #endif uv_pipe_init(&loop->uv, &stream->uv.pipe, 0); uv_pipe_open(&stream->uv.pipe, fd); - stream->uvstream = STRUCT_CAST(uv_stream_t, &stream->uv.pipe); + stream->uvstream = (uv_stream_t *)&stream->uv.pipe; #ifdef MSWIN } #endif diff --git a/src/nvim/event/time.c b/src/nvim/event/time.c index c997e3c558..0b624d9547 100644 --- a/src/nvim/event/time.c +++ b/src/nvim/event/time.c @@ -1,6 +1,3 @@ -// This is an open source non-commercial project. Dear PVS-Studio, please check -// it. PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com - #include <stdint.h> #include <uv.h> diff --git a/src/nvim/event/wstream.c b/src/nvim/event/wstream.c index 65391ba5cf..b19ff0c7d3 100644 --- a/src/nvim/event/wstream.c +++ b/src/nvim/event/wstream.c @@ -1,6 +1,3 @@ -// This is an open source non-commercial project. Dear PVS-Studio, please check -// it. PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com - #include <assert.h> #include <stdbool.h> #include <uv.h> |