diff --git a/lib/multi.c b/lib/multi.c
index cfb749dfd96580cf9931548406dcc8e663c69e18..9b9929dc9ea743f7fd3b66f9b1b20cd70c7454f7 100644
--- a/lib/multi.c
+++ b/lib/multi.c
@@ -1083,7 +1083,7 @@ static void singlesocket(struct Curl_multi *multi,
             continue;
         }
 
-        action = ((current.action & GETSOCK_READSOCK(i))?CURL_POLL_IN:0) |
+        action = ((current.action & GETSOCK_READSOCK(i))?CURL_POLL_IN:0) +
           ((current.action & GETSOCK_WRITESOCK(i))?CURL_POLL_OUT:0);
       }