Properly type handles to prevent overflows

This change is needed for 32 bit targets as the default type is int32
and the handle constants do not fit into it.

Signed-off-by: Jiri Appl <jiria@microsoft.com>
This commit is contained in:
Jiri Appl 2018-10-10 16:31:22 -07:00
parent deac65c929
commit 33a779e308
1 changed files with 3 additions and 3 deletions

View File

@ -396,8 +396,8 @@ func initPanicFile(path string) error {
// Update STD_ERROR_HANDLE to point to the panic file so that Go writes to // Update STD_ERROR_HANDLE to point to the panic file so that Go writes to
// it when it panics. Remember the old stderr to restore it before removing // it when it panics. Remember the old stderr to restore it before removing
// the panic file. // the panic file.
sh := windows.STD_ERROR_HANDLE sh := uint32(windows.STD_ERROR_HANDLE)
h, err := windows.GetStdHandle(uint32(sh)) h, err := windows.GetStdHandle(sh)
if err != nil { if err != nil {
return err return err
} }
@ -421,7 +421,7 @@ func initPanicFile(path string) error {
func removePanicFile() { func removePanicFile() {
if st, err := panicFile.Stat(); err == nil { if st, err := panicFile.Stat(); err == nil {
if st.Size() == 0 { if st.Size() == 0 {
sh := windows.STD_ERROR_HANDLE sh := uint32(windows.STD_ERROR_HANDLE)
setStdHandle.Call(uintptr(sh), uintptr(oldStderr)) setStdHandle.Call(uintptr(sh), uintptr(oldStderr))
panicFile.Close() panicFile.Close()
os.Remove(panicFile.Name()) os.Remove(panicFile.Name())