From 3f217ff95bf0ac9f4e2007891eaf429936d328a2 Mon Sep 17 00:00:00 2001 From: Vimal Kumar Date: Sat, 25 Jan 2020 20:46:24 +0530 Subject: [PATCH] internal/model/table : return error if reconcile failed Return error if reconcile failed, so that view can go back to default view. If not return error here, it panics. --- internal/model/table.go | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/internal/model/table.go b/internal/model/table.go index 80595f4a..c5893b35 100644 --- a/internal/model/table.go +++ b/internal/model/table.go @@ -234,19 +234,21 @@ func (t *Table) reconcile(ctx context.Context) error { } var rows render.Rows - if _, ok := meta.Renderer.(*render.Generic); ok { - table, ok := oo[0].(*metav1beta1.Table) - if !ok { - return fmt.Errorf("expecting a meta table but got %T", oo[0]) - } - rows = make(render.Rows, len(table.Rows)) - if err := genericHydrate(t.namespace, table, rows, meta.Renderer); err != nil { - return err - } - } else { - rows = make(render.Rows, len(oo)) - if err := hydrate(t.namespace, oo, rows, meta.Renderer); err != nil { - return err + if len(oo) > 0 { + if _, ok := meta.Renderer.(*render.Generic); ok { + table, ok := oo[0].(*metav1beta1.Table) + if !ok { + return fmt.Errorf("expecting a meta table but got %T", oo[0]) + } + rows = make(render.Rows, len(table.Rows)) + if err := genericHydrate(t.namespace, table, rows, meta.Renderer); err != nil { + return err + } + } else { + rows = make(render.Rows, len(oo)) + if err := hydrate(t.namespace, oo, rows, meta.Renderer); err != nil { + return err + } } }