[virt-tools-list] [PATCH virt-viewer 01/11] ovirt-foreign-menu: Rework states logic
Pavel Grunt
pgrunt at redhat.com
Mon Jul 18 14:58:05 UTC 2016
On Mon, 2016-07-18 at 10:22 -0300, Eduardo Lima (Etrunko) wrote:
> On 07/18/2016 06:15 AM, Pavel Grunt wrote:
> >
> > Hi Eduardo,
> >
> > On Sun, 2016-07-17 at 23:13 -0300, Eduardo Lima (Etrunko) wrote:
> > >
> > > Use switch/case instead of lots of conditional blocks
> > Yes, it is more readable
> > >
> > >
> > > Signed-off-by: Eduardo Lima (Etrunko) <etrunko at redhat.com>
> > > ---
> > > src/ovirt-foreign-menu.c | 76 +++++++++++++++++++++++------------------
> > > ----
> > > ---
> > > 1 file changed, 36 insertions(+), 40 deletions(-)
> > >
> > > diff --git a/src/ovirt-foreign-menu.c b/src/ovirt-foreign-menu.c
> > > index 33ff4f1..b0b8fec 100644
> > > --- a/src/ovirt-foreign-menu.c
> > > +++ b/src/ovirt-foreign-menu.c
> > > @@ -312,51 +312,47 @@ ovirt_foreign_menu_next_async_step(OvirtForeignMenu
> > > *menu,
> > > g_return_if_fail(current_state >= STATE_0);
> > > g_return_if_fail(current_state < STATE_ISOS);
> > >
> > > - current_state++;
> > my preference is to keep the increment outside the switch statement
> >
> > >
> > > -
> > > - if (current_state == STATE_API) {
> > > - if (menu->priv->api == NULL) {
> > > - ovirt_foreign_menu_fetch_api_async(menu);
> > > - } else {
> > > - current_state++;
> > > + switch (++current_state) {
> > Actually the increment is not needed at all thanks to your changes, imo
> > switch(current_state + 1) would be more readable
>
> Alright, I don't mind at all.
>
> >
> > >
> > > + case STATE_API: {
> > 'case' should have the same indentation as its 'switch'
> >
> > Remove extra {}, no need to have the null check in the extra block (applies
> > to
> > all cases)
> >
>
> I don't think so, the if checks are necessary for the initialization
> process, when we have everything initalized, it will fall straight to
> the STATE_ISOS case. Or maybe you are talking about something else and I
> misunderstood?
>
the {} are not needed, but it is a minor:
...
case STATE_API:
if (menu->priv->api == NULL) {
ovirt_foreign_menu_fetch_api_async(menu);
break;
}
case STATE_VM:
if (menu->priv->vm == NULL) {
ovirt_foreign_menu_fetch_vm_async(menu);
break;
}
...
>
More information about the virt-tools-list
mailing list