diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 66e91c48e..c0b4bf9be 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,8 @@ +2010-06-01 Corinna Vinschen + + * fhandler_netdrive.cc (fhandler_netdrive::exists): Always free WNet + resource if created. + 2010-05-31 Corinna Vinschen * cygheap.cc (cygheap_user::set_name): Allow to change the user name diff --git a/winsup/cygwin/fhandler_netdrive.cc b/winsup/cygwin/fhandler_netdrive.cc index 3de2278ef..4cce69753 100644 --- a/winsup/cygwin/fhandler_netdrive.cc +++ b/winsup/cygwin/fhandler_netdrive.cc @@ -1,6 +1,6 @@ /* fhandler_netdrive.cc: fhandler for // and //MACHINE handling - Copyright 2005, 2006, 2007, 2008 Red Hat, Inc. + Copyright 2005, 2006, 2007, 2008, 2009, 2010 Red Hat, Inc. This file is part of Cygwin. @@ -164,15 +164,9 @@ fhandler_netdrive::exists () nr.lpRemoteName = namebuf; DWORD ret = create_thread_and_wait (GET_RESOURCE_OPENENUM, &nr, &nh, 0, "WNetOpenEnum"); - if (ret != NO_ERROR) - { - if (nh.dom) - WNetCloseEnum (nh.dom); - if (nh.net) - WNetCloseEnum (nh.net); - return 0; - } - return 1; + if (nh.dom) + WNetCloseEnum (nh.dom); + return ret != NO_ERROR ? 0 : 1; } fhandler_netdrive::fhandler_netdrive ():