Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2000-10-31 20:01:56 +0300
committerChristopher Faylor <me@cgf.cx>2000-10-31 20:01:56 +0300
commitdd07a42567d385dcb9837830f38295308f6500fc (patch)
tree17d1ffcb7f492e4ccc423076b2202baad337ed75 /winsup/cygwin/pinfo.cc
parent99119403f3d75aac653ff640415873f818e5188f (diff)
* pinfo.cc (enum_init): Don't suffer silently if we can't load the process
enumerators.
Diffstat (limited to 'winsup/cygwin/pinfo.cc')
-rw-r--r--winsup/cygwin/pinfo.cc15
1 files changed, 12 insertions, 3 deletions
diff --git a/winsup/cygwin/pinfo.cc b/winsup/cygwin/pinfo.cc
index f50982833..3b5f002e4 100644
--- a/winsup/cygwin/pinfo.cc
+++ b/winsup/cygwin/pinfo.cc
@@ -337,10 +337,16 @@ enum_init (DWORD *lpidProcess, DWORD cb, DWORD *cbneeded)
{
h = LoadLibrary ("psapi.dll");
if (!h)
- return 0;
+ {
+ system_printf ("couldn't load psapi.dll, %E");
+ return 0;
+ }
myEnumProcesses = (ENUMPROCESSES) GetProcAddress (h, "EnumProcesses");
if (!myEnumProcesses)
- return 0;
+ {
+ system_printf ("couldn't locate EnumProcesses in psapi.dll, %E");
+ return 0;
+ }
}
else
{
@@ -352,7 +358,10 @@ enum_init (DWORD *lpidProcess, DWORD cb, DWORD *cbneeded)
myProcess32Next = (PROCESSWALK)
GetProcAddress(h, "Process32Next");
if (!myCreateToolhelp32Snapshot || !myProcess32First || !myProcess32Next)
- return 0;
+ {
+ system_printf ("Couldn't find toolhelp processes, %E");
+ return 0;
+ }
myEnumProcesses = EnumProcessesW95;
}