Changeset: 124eb0314152 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/124eb0314152
Modified Files:
        gdk/gdk.h
Branch: Aug2024
Log Message:

Fixes #7557.


diffs (30 lines):

diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -2441,7 +2441,7 @@ TIMEOUT_TEST(QryCtx *qc)
 #define TIMEOUT_LOOP_IDX(IDX, REPEATS, QC)                             \
        for (BUN REPS = (IDX = 0, (REPEATS)); REPS > 0; REPS = 0) /* "loops" at 
most once */ \
                for (BUN CTR1 = 0, END1 = (REPS + CHECK_QRY_TIMEOUT_STEP) >> 
CHECK_QRY_TIMEOUT_SHIFT; CTR1 < END1 && !GDKexiting() && ((QC) == NULL || 
(QC)->endtime >= 0); CTR1++) \
-                       if (TIMEOUT_TEST(QC)) {                         \
+                       if (CTR1 > 0 && TIMEOUT_TEST(QC)) {             \
                                break;                                  \
                        } else                                          \
                                for (BUN CTR2 = 0, END2 = CTR1 == END1 - 1 ? 
REPS & CHECK_QRY_TIMEOUT_MASK : CHECK_QRY_TIMEOUT_STEP; CTR2 < END2; CTR2++, 
IDX++)
@@ -2451,7 +2451,7 @@ TIMEOUT_TEST(QryCtx *qc)
 #define TIMEOUT_LOOP_IDX_DECL(IDX, REPEATS, QC)                                
\
        for (BUN IDX = 0, REPS = (REPEATS); REPS > 0; REPS = 0) /* "loops" at 
most once */ \
                for (BUN CTR1 = 0, END1 = (REPS + CHECK_QRY_TIMEOUT_STEP) >> 
CHECK_QRY_TIMEOUT_SHIFT; CTR1 < END1 && !GDKexiting() && ((QC) == NULL || 
(QC)->endtime >= 0); CTR1++) \
-                       if (TIMEOUT_TEST(QC)) {                         \
+                       if (CTR1 > 0 && TIMEOUT_TEST(QC)) {             \
                                break;                                  \
                        } else                                          \
                                for (BUN CTR2 = 0, END2 = CTR1 == END1 - 1 ? 
REPS & CHECK_QRY_TIMEOUT_MASK : CHECK_QRY_TIMEOUT_STEP; CTR2 < END2; CTR2++, 
IDX++)
@@ -2459,7 +2459,7 @@ TIMEOUT_TEST(QryCtx *qc)
 /* there is no user-visible loop variable */
 #define TIMEOUT_LOOP(REPEATS, QC)                                      \
        for (BUN CTR1 = 0, REPS = (REPEATS), END1 = (REPS + 
CHECK_QRY_TIMEOUT_STEP) >> CHECK_QRY_TIMEOUT_SHIFT; CTR1 < END1 && 
!GDKexiting() && ((QC) == NULL || (QC)->endtime >= 0); CTR1++) \
-               if (TIMEOUT_TEST(QC)) {                                 \
+               if (CTR1 > 0 && TIMEOUT_TEST(QC)) {                     \
                        break;                                          \
                } else                                                  \
                        for (BUN CTR2 = 0, END2 = CTR1 == END1 - 1 ? REPS & 
CHECK_QRY_TIMEOUT_MASK : CHECK_QRY_TIMEOUT_STEP; CTR2 < END2; CTR2++)
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to