From 90bf0cc2f61bc051e848ee6f202c43d7f5ae4ca0 Mon Sep 17 00:00:00 2001 From: Dave Tucker Date: Thu, 10 Aug 2017 17:28:09 +0100 Subject: [PATCH] aws: Fix panic when there is no console output When an AWS machine is stopped and there is no console output the CLI panics due to a nil pointer dereference. This commit checks that the console output is not null before attempting to decode it. Signed-off-by: Dave Tucker --- src/cmd/linuxkit/run_aws.go | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/cmd/linuxkit/run_aws.go b/src/cmd/linuxkit/run_aws.go index aadab66d2..694d03b2d 100644 --- a/src/cmd/linuxkit/run_aws.go +++ b/src/cmd/linuxkit/run_aws.go @@ -167,12 +167,15 @@ func runAWS(args []string) { log.Fatalf("Error getting output from instance %s: %s", *instanceID, err) } - out, err := base64.StdEncoding.DecodeString(*output.Output) - if err != nil { - log.Fatalf("Error decoding output: %s", err) + if output.Output == nil { + log.Warn("No Console Output found") + } else { + out, err := base64.StdEncoding.DecodeString(*output.Output) + if err != nil { + log.Fatalf("Error decoding output: %s", err) + } + fmt.Printf(string(out) + "\n") } - fmt.Printf(string(out) + "\n") - log.Infof("Terminating instance %s", *instanceID) terminateParams := &ec2.TerminateInstancesInput{ InstanceIds: []*string{instanceID},