Browse Source

Resurrect dead code in test_channelpadding.c

A for-loop in test_channelpadding_timers() would never run because it
was trying to increment a counter up to CHANNELS_TO_TEST/3 after an
earlier block already incremented it to CHANNELS_TO_TEST/2.

Fixes #22221, CID 1405983.
Taylor Yu 7 years ago
parent
commit
2bf4263800
1 changed files with 10 additions and 10 deletions
  1. 10 10
      src/test/test_channelpadding.c

+ 10 - 10
src/test/test_channelpadding.c

@@ -287,22 +287,22 @@ test_channelpadding_timers(void *arg)
       tt_int_op(tried_to_write_cell, OP_EQ, 0);
     }
 
-    /* This loop should add timers to our existing lists in a weak
-     * pseudorandom pattern.  It ensures that the lists can grow with multiple
-     * timers in them. */
-    for (; i < CHANNELS_TO_TEST/2; i++) {
-      chans[i]->next_padding_time_ms = monotime_coarse_absolute_msec() + 10 +
-          i*3 % CHANNELPADDING_MAX_TIMERS;
+    /* This loop should add timers to the first position in the timerslot
+     * array, since its timeout is before all other timers. */
+    for (; i < CHANNELS_TO_TEST/3; i++) {
+      chans[i]->next_padding_time_ms = monotime_coarse_absolute_msec() + 1;
       decision = channelpadding_decide_to_pad_channel(chans[i]);
       tt_int_op(decision, OP_EQ, CHANNELPADDING_PADDING_SCHEDULED);
       tt_assert(chans[i]->pending_padding_callback);
       tt_int_op(tried_to_write_cell, OP_EQ, 0);
     }
 
-    /* This loop should add timers to the first position in the timerslot
-     * array, since its timeout is before all other timers. */
-    for (; i < CHANNELS_TO_TEST/3; i++) {
-      chans[i]->next_padding_time_ms = monotime_coarse_absolute_msec() + 1;
+    /* This loop should add timers to our existing lists in a weak
+     * pseudorandom pattern.  It ensures that the lists can grow with multiple
+     * timers in them. */
+    for (; i < CHANNELS_TO_TEST/2; i++) {
+      chans[i]->next_padding_time_ms = monotime_coarse_absolute_msec() + 10 +
+          i*3 % CHANNELPADDING_MAX_TIMERS;
       decision = channelpadding_decide_to_pad_channel(chans[i]);
       tt_int_op(decision, OP_EQ, CHANNELPADDING_PADDING_SCHEDULED);
       tt_assert(chans[i]->pending_padding_callback);