summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorSimon Rozman <simon@rozman.si>2019-02-04 08:22:49 +0100
committerJason A. Donenfeld <Jason@zx2c4.com>2019-02-05 12:59:42 +0100
commit90b6938ca04d49240ddcd1a50650489f3fe3f26b (patch)
tree15310940e61e58051c468d6406cb7374ca912cd1
parent269944002fcd2f48cda25d564068a14159d179e2 (diff)
Stop checking for valid handle in DevInfo.Close()
User should not have called or deferred the Close() method should SetupDiGetClassDevsEx() return an error (and invalid handle). And even if user does that, a SetupDiDestroyDeviceInfoList(INVALID_HANDLE_VALUE) is harmless. It just returns ERROR_INVALID_HANDLE - we have a unit test for this in TestSetupDiDestroyDeviceInfoList(). Signed-off-by: Simon Rozman <simon@rozman.si>
-rw-r--r--setupapi/types_windows.go6
1 files changed, 1 insertions, 5 deletions
diff --git a/setupapi/types_windows.go b/setupapi/types_windows.go
index e2617a4..bc6f66b 100644
--- a/setupapi/types_windows.go
+++ b/setupapi/types_windows.go
@@ -25,11 +25,7 @@ type DevInfo windows.Handle
// Close function deletes a device information set and frees all associated memory.
func (h DevInfo) Close() error {
- if h != DevInfo(windows.InvalidHandle) {
- return SetupDiDestroyDeviceInfoList(h)
- }
-
- return nil
+ return SetupDiDestroyDeviceInfoList(h)
}
const (