From ae2cbbf851ddb9ff1879f5de8cb7d863bdb783dc Mon Sep 17 00:00:00 2001 From: Jaden Weiss Date: Tue, 17 Mar 2020 10:47:12 -0400 Subject: [PATCH] internal/task: fix nil panic in (*internal/task.Stack).Pop While adding some code to clear the Next field when popping from a task stack for safety reasons, the clear was placed outside of a nil pointer check. As a result, (*internal/task.Stack).Pop panicked when the Stack is empty. --- src/internal/task/queue.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/internal/task/queue.go b/src/internal/task/queue.go index c86bc596..4b0a22bf 100644 --- a/src/internal/task/queue.go +++ b/src/internal/task/queue.go @@ -68,8 +68,8 @@ func (s *Stack) Pop() *Task { t := s.top if t != nil { s.top = t.Next + t.Next = nil } - t.Next = nil return t }