Commit 3ba75811 authored by Mike Perry's avatar Mike Perry Committed by George Kadianakis
Browse files

Provide a smartlist reverse-order traversal.



We need this for padding negotiation so that we can have later machine
revisions supercede earlier ones.

Co-authored-by: default avatarGeorge Kadianakis <desnacked@riseup.net>
parent 99713b17
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -83,6 +83,14 @@
         ++var ## _sl_idx) {                                    \
      var = (sl)->list[var ## _sl_idx];

#define SMARTLIST_FOREACH_REVERSE_BEGIN(sl, type, var)  \
  STMT_BEGIN                                                       \
    int var ## _sl_idx, var ## _sl_len=(sl)->num_used;             \
    type var;                                                      \
    for (var ## _sl_idx = var ## _sl_len-1; var ## _sl_idx >= 0;   \
         --var ## _sl_idx) {                                       \
      var = (sl)->list[var ## _sl_idx];

#define SMARTLIST_FOREACH_END(var)              \
    var = NULL;                                 \
    (void) var ## _sl_idx;                      \