From 9bf3c6e64d095f3f152a7062c53c8beea1f2326e Mon Sep 17 00:00:00 2001 From: emanuele-f Date: Thu, 21 Jul 2022 23:06:11 +0200 Subject: [PATCH] Catch possible select syscall interruption --- app/src/main/jni/core/capture_vpn.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/jni/core/capture_vpn.c b/app/src/main/jni/core/capture_vpn.c index f6056790..ce089ae6 100644 --- a/app/src/main/jni/core/capture_vpn.c +++ b/app/src/main/jni/core/capture_vpn.c @@ -488,7 +488,7 @@ int run_vpn(pcapdroid_t *pd) { FD_SET(pd->vpn.tunfd, &fdset); max_fd = max(max_fd, pd->vpn.tunfd); - if(select(max_fd + 1, &fdset, &wrfds, NULL, &timeout) < 0) { + if((select(max_fd + 1, &fdset, &wrfds, NULL, &timeout) < 0) && (errno != EINTR)) { log_e("select failed[%d]: %s", errno, strerror(errno)); break; }