Просмотр исходного кода

Suppress a coverity false positive in connection_edge_package_raw_inbuf

Coverity is worried that we're checking entry_conn in some cases,
but not in the case where we set entry_conn->pending_optimistic_data.

This commit should calm it down (CID 718623).
Nick Mathewson 11 лет назад
Родитель
Сommit
43d2f99d54
1 измененных файлов с 3 добавлено и 2 удалено
  1. 3 2
      src/or/relay.c

+ 3 - 2
src/or/relay.c

@@ -1563,11 +1563,12 @@ connection_edge_package_raw_inbuf(edge_connection_t *conn, int package_partial,
   circuit_t *circ;
   const unsigned domain = conn->base_.type == CONN_TYPE_AP ? LD_APP : LD_EXIT;
   int sending_from_optimistic = 0;
+  entry_connection_t *entry_conn =
+    conn->base_.type == CONN_TYPE_AP ? EDGE_TO_ENTRY_CONN(conn) : NULL;
   const int sending_optimistically =
+    entry_conn &&
     conn->base_.type == CONN_TYPE_AP &&
     conn->base_.state != AP_CONN_STATE_OPEN;
-  entry_connection_t *entry_conn =
-    conn->base_.type == CONN_TYPE_AP ? EDGE_TO_ENTRY_CONN(conn) : NULL;
   crypt_path_t *cpath_layer = conn->cpath_layer;
 
   tor_assert(conn);