From 9ec49e082f811482ecdccc837c27961d68247d25 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Fri, 25 Aug 2017 21:56:07 +0200 Subject: prog: restore missing struct fields We already do this for syscall arguments. Helps to save some old programs after description changes. --- prog/encoding.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'prog/encoding.go') diff --git a/prog/encoding.go b/prog/encoding.go index f6eb4d168..8ba634d12 100644 --- a/prog/encoding.go +++ b/prog/encoding.go @@ -314,8 +314,8 @@ func parseArg(typ sys.Type, p *parser, vars map[string]Arg) (Arg, error) { } } p.Parse('}') - if last := t1.Fields[len(t1.Fields)-1]; sys.IsPad(last) { - inner = append(inner, constArg(last, 0)) + for len(inner) < len(t1.Fields) { + inner = append(inner, defaultArg(t1.Fields[len(inner)])) } arg = groupArg(typ, inner) case '[': -- cgit mrf-deployment