From 5254b4eb62ae6f24f2635314c141fb5e73636900 Mon Sep 17 00:00:00 2001
From: Ben Cragg <bcvery1@gmail.com>
Date: Sun, 10 May 2020 14:25:05 +0100
Subject: [PATCH] Fixing 0,0 being legit closest point

---
 geometry.go | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/geometry.go b/geometry.go
index 2d902dc..a98b78c 100644
--- a/geometry.go
+++ b/geometry.go
@@ -406,12 +406,12 @@ func (l Line) IntersectRect(r Rect) Vec {
 			//  - the point is contained by the rectangle
 			//  - the point is not the corner itself
 			corners := r.Vertices()
-			closest := ZV
+			var closest *Vec
 			closestCorner := corners[0]
 			for _, c := range corners {
 				cc := l.Closest(c)
-				if closest == ZV || (closest.Len() > cc.Len() && r.Contains(cc)) {
-					closest = cc
+				if closest == nil || (closest.Len() > cc.Len() && r.Contains(cc)) {
+					closest = &cc
 					closestCorner = c
 				}
 			}
-- 
GitLab