Messages in this thread | | | Subject | Re: [PATCH v7 2/2] KEYS: Avoid false positive ENOMEM error on key read | From | Tetsuo Handa <> | Date | Sun, 22 Mar 2020 09:31:21 +0900 |
| |
On 2020/03/22 3:49, Waiman Long wrote: > + do {
> + if (ret > key_data_len) { > + if (unlikely(key_data)) > + __kvzfree(key_data, key_data_len); > + key_data_len = ret; > + continue; /* Allocate buffer */
Excuse me, but "continue;" inside "do { ... } while (0);" means "break;" because "while (0)" is evaluated before continuing the loop.
---------- #include <stdio.h>
int main(int argc, char *argv[]) { do { printf("step 1\n"); if (1) { printf("step 2\n"); continue; } printf("step 3\n"); } while (0); printf("step 4\n"); return 0; } ----------
---------- step 1 step 2 step 4 ----------
> + }
> + } while (0);
| |