]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
webui: http streaming - cosmetic changes, check getsockopt return code
authorJaroslav Kysela <perex@perex.cz>
Sun, 26 Oct 2014 16:47:19 +0000 (17:47 +0100)
committerJaroslav Kysela <perex@perex.cz>
Sun, 26 Oct 2014 16:47:19 +0000 (17:47 +0100)
src/webui/webui.c

index 523a4a11c7c74fcd23157bdde26a2faf0d9a5ec1..7c23128a24a1b633b5f35b7cbf7315f4acee05ab 100644 (file)
@@ -262,23 +262,22 @@ http_stream_run(http_connection_t *hc, profile_chain_t *prch,
       ts.tv_nsec = tp.tv_usec * 1000;
 
       if(pthread_cond_timedwait(&sq->sq_cond, &sq->sq_mutex, &ts) == ETIMEDOUT) {
-          timeouts++;
-
-          //Check socket status
-          getsockopt(hc->hc_fd, SOL_SOCKET, SO_ERROR, (char *)&err, &errlen);  
-          if (err) {
-              tvhlog(LOG_DEBUG, "webui",  "Stop streaming %s, client hung up", hc->hc_url_orig);
-              run = 0;
-          } else if(timeouts >= grace) {
-              tvhlog(LOG_WARNING, "webui",  "Stop streaming %s, timeout waiting for packets", hc->hc_url_orig);
-              run = 0;
-          }
+        timeouts++;
+
+        /* Check socket status */
+        if (getsockopt(hc->hc_fd, SOL_SOCKET, SO_ERROR, (char *)&err, &errlen) || err) {
+          tvhlog(LOG_DEBUG, "webui",  "Stop streaming %s, client hung up", hc->hc_url_orig);
+          run = 0;
+        } else if(timeouts >= grace) {
+          tvhlog(LOG_WARNING, "webui",  "Stop streaming %s, timeout waiting for packets", hc->hc_url_orig);
+          run = 0;
+        }
       }
       pthread_mutex_unlock(&sq->sq_mutex);
       continue;
     }
 
-    timeouts = 0; //Reset timeout counter
+    timeouts = 0; /* Reset timeout counter */
     TAILQ_REMOVE(&sq->sq_queue, sm, sm_link);
     pthread_mutex_unlock(&sq->sq_mutex);