commit | 18d3f5618645fbebec703867364c3f2ac1102f1d | [log] [tgz] |
---|---|---|
author | crazybolillo <antonio@zoftko.com> | Fri Mar 08 12:44:38 2024 -0300 |
committer | Gopher Robot <gobot@golang.org> | Fri Mar 08 22:14:54 2024 +0000 |
tree | 301b984a960c82ee6d7727433043d8abe657b065 | |
parent | 766dc5df63e3e3e5cd6b1682f522a01c99723beb [diff] |
modfile: fix crash on AddGoStmt in empty File AddGoStmt uses File.Syntax without checking whether it is nil or not. This causes crashes when using it on empty files that have not had their Syntax member initialized to a valid pointer. This change fixes it by ensuring File.Syntax is a valid pointer before proceeding. Fixes golang/go#62457. Change-Id: Iab02039f79e73d939ca5d3e48b29faa5e0a9a5ec Reviewed-on: https://go-review.googlesource.com/c/mod/+/570115 Reviewed-by: Michael Knyszek <mknyszek@google.com> Auto-Submit: Bryan Mills <bcmills@google.com> Reviewed-by: Bryan Mills <bcmills@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
This repository holds packages for writing tools that work directly with Go module mechanics. That is, it is for direct manipulation of Go modules themselves.
It is NOT about supporting general development tools that need to do things like load packages in module mode. That use case, where modules are incidental rather than the focus, should remain in x/tools, specifically x/tools/go/packages.
The specific case of loading packages should still be done by invoking the go command, which remains the single point of truth for package loading algorithms.