Skip to content

Commit 51fd0cb

Browse files
tklausergopherbot
authored andcommitted
syscall: don't check non-existent return code in GetStartupInfo
Fixes #31316 Change-Id: I1ca5968836e7bcad91496e4ed3cf1a0caf1375f1 Reviewed-on: https://go-review.googlesource.com/c/go/+/520275 Run-TryBot: Tobias Klauser <[email protected]> Reviewed-by: Ian Lance Taylor <[email protected]> TryBot-Result: Gopher Robot <[email protected]> Auto-Submit: Tobias Klauser <[email protected]> Reviewed-by: Dmitri Shuralyov <[email protected]>
1 parent 6c431fa commit 51fd0cb

File tree

3 files changed

+17
-6
lines changed

3 files changed

+17
-6
lines changed

src/syscall/syscall_windows.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -264,7 +264,7 @@ func NewCallbackCDecl(fn any) uintptr {
264264
//sys OpenProcess(da uint32, inheritHandle bool, pid uint32) (handle Handle, err error)
265265
//sys TerminateProcess(handle Handle, exitcode uint32) (err error)
266266
//sys GetExitCodeProcess(handle Handle, exitcode *uint32) (err error)
267-
//sys GetStartupInfo(startupInfo *StartupInfo) (err error) = GetStartupInfoW
267+
//sys getStartupInfo(startupInfo *StartupInfo) = GetStartupInfoW
268268
//sys GetCurrentProcess() (pseudoHandle Handle, err error)
269269
//sys GetProcessTimes(handle Handle, creationTime *Filetime, exitTime *Filetime, kernelTime *Filetime, userTime *Filetime) (err error)
270270
//sys DuplicateHandle(hSourceProcessHandle Handle, hSourceHandle Handle, hTargetProcessHandle Handle, lpTargetHandle *Handle, dwDesiredAccess uint32, bInheritHandle bool, dwOptions uint32) (err error)
@@ -1437,3 +1437,8 @@ func newProcThreadAttributeList(maxAttrCount uint32) (*_PROC_THREAD_ATTRIBUTE_LI
14371437
func RegEnumKeyEx(key Handle, index uint32, name *uint16, nameLen *uint32, reserved *uint32, class *uint16, classLen *uint32, lastWriteTime *Filetime) (regerrno error) {
14381438
return regEnumKeyEx(key, index, name, nameLen, reserved, class, classLen, lastWriteTime)
14391439
}
1440+
1441+
func GetStartupInfo(startupInfo *StartupInfo) error {
1442+
getStartupInfo(startupInfo)
1443+
return nil
1444+
}

src/syscall/syscall_windows_test.go

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -204,6 +204,15 @@ func TestGetwd_DoesNotPanicWhenPathIsLong(t *testing.T) {
204204
syscall.Getwd()
205205
}
206206

207+
func TestGetStartupInfo(t *testing.T) {
208+
var si syscall.StartupInfo
209+
err := syscall.GetStartupInfo(&si)
210+
if err != nil {
211+
// see https://go.dev/issue/31316
212+
t.Fatalf("GetStartupInfo: got error %v, want nil", err)
213+
}
214+
}
215+
207216
func FuzzUTF16FromString(f *testing.F) {
208217
f.Add("hi") // ASCII
209218
f.Add("â") // latin1

src/syscall/zsyscall_windows.go

Lines changed: 2 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)