From b2f3a427dd554874eab570d03297468d22f903b6 Mon Sep 17 00:00:00 2001
From: Kir Kolyshkin <kolyshkin@gmail.com>
Date: Wed, 21 Aug 2024 12:47:04 -0700
Subject: [PATCH] os: improve Getwd documentation

1. Replace "rooted path name" with a more accurate "absolute path name".
Using "absolute" seems to be preferred terminology on Unix. On Windows,
there are multiple roots in Windows, thus "a rooted path name" can be
one relative to a drive letter or a server name. Note that Windows'
GetCurrentDirectory documentation [1] also says "the absolute path to the
current directory".

2. Add a note about using $PWD on Unix.

[1]: https://learn.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-getcurrentdirectory

Change-Id: Ic310f0f8776ff059544789306ae5cfa1fa267b12
Reviewed-on: https://go-review.googlesource.com/c/go/+/607615
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Ian Lance Taylor <iant@google.com>
Auto-Submit: Ian Lance Taylor <iant@golang.org>
Reviewed-by: Cherry Mui <cherryyz@google.com>
---
 src/os/getwd.go | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/os/getwd.go b/src/os/getwd.go
index 64c3c4acd7e..732ece7b098 100644
--- a/src/os/getwd.go
+++ b/src/os/getwd.go
@@ -15,10 +15,14 @@ var getwdCache struct {
 	dir string
 }
 
-// Getwd returns a rooted path name corresponding to the
+// Getwd returns an absolute path name corresponding to the
 // current directory. If the current directory can be
 // reached via multiple paths (due to symbolic links),
 // Getwd may return any one of them.
+//
+// On Unix platforms, if the environment variable PWD
+// provides an absolute name, and it is a name of the
+// current directory, it is returned.
 func Getwd() (dir string, err error) {
 	if runtime.GOOS == "windows" || runtime.GOOS == "plan9" {
 		dir, err = syscall.Getwd()
-- 
GitLab