Re: What behavior is in this loop?
От | Heikki Linnakangas |
---|---|
Тема | Re: What behavior is in this loop? |
Дата | |
Msg-id | 530F1F5A.8090907@vmware.com обсуждение исходный текст |
Ответ на | What behavior is in this loop? (KONDO Mitsumasa <kondo.mitsumasa@lab.ntt.co.jp>) |
Ответы |
Re: What behavior is in this loop?
|
Список | pgsql-hackers |
On 02/27/2014 12:38 PM, KONDO Mitsumasa wrote: > I found interesting "for" and "while" loop in WaitForWALToBecomeAvailable() in > xlog.c. Can you tell me this behavior? > > for (;;) > { > ~ > } while (StanbyMode) > > I confirmed this code is no problem in gcc compiler:) Oh wow :-). That's clearly a thinko, although harmless in this case. Looking at the git history, I made that mistake in commit abf5c5c9a. Before that, there was no "while". That's easier to understand with some extra formatting. That's two loops, like this: /* loop 1 */ for (;;) { ... } /* loop2 */ while(StandbyMode); The second loop is obviously completely pointless. Thankfully, the there are no "breaks" inside the first loop (the ones within the switch-statements don't count), so the endless while-loop is never reached. I'll go fix that... Thanks for the report! - Heikki
В списке pgsql-hackers по дате отправления: