summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGiampaolo Rodola <g.rodola@gmail.com>2016-02-04 08:29:41 +0100
committerGiampaolo Rodola <g.rodola@gmail.com>2016-02-04 08:29:41 +0100
commit1ef408d2c3cf367f6f9d1dcd4752a99f46c11eb1 (patch)
tree04045d0b4dca5e9da8666d1c93320cd66eccf79a
parentc462b81db32a130f9bb5faf27014882c7fa77725 (diff)
parent1c02e2d147cfa5fd3ec32a0fc8035f237f505d42 (diff)
downloadpsutil-1ef408d2c3cf367f6f9d1dcd4752a99f46c11eb1.tar.gz
Merge branch 'master' of github.com:giampaolo/psutil
-rw-r--r--psutil/_pswindows.py20
1 files changed, 13 insertions, 7 deletions
diff --git a/psutil/_pswindows.py b/psutil/_pswindows.py
index 63805524..0623c234 100644
--- a/psutil/_pswindows.py
+++ b/psutil/_pswindows.py
@@ -356,16 +356,20 @@ class Process(object):
def _get_raw_meminfo(self):
try:
- info = cext.proc_memory_info(self.pid)
- uss = cext.proc_memory_uss(self.pid)
- return info + (uss,)
+ return cext.proc_memory_info(self.pid)
except OSError as err:
if err.errno in ACCESS_DENIED_SET:
# TODO: the C ext can probably be refactored in order
# to get this from cext.proc_info()
- info = cext.proc_memory_info_2(self.pid)
- uss = cext.proc_memory_uss(self.pid)
- return info + (uss,)
+ return cext.proc_memory_info_2(self.pid)
+ raise
+
+ def _get_uss_mem(self):
+ try:
+ return cext.proc_memory_uss(self.pid)
+ except OSError as err:
+ if err.errno in ACCESS_DENIED_SET:
+ return 0
raise
@wrap_exceptions
@@ -379,7 +383,9 @@ class Process(object):
@wrap_exceptions
def memory_info_ex(self):
- return pextmem(*self._get_raw_meminfo())
+ info = self._get_raw_meminfo()
+ uss = self._get_uss_mem()
+ return pextmem(*info + (uss, ))
def memory_maps(self):
try: