summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authornagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-05-09 14:48:49 +0000
committernagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-05-09 14:48:49 +0000
commit33b90a28e5ebd454c49ba206f0f95dc2ee18116f (patch)
treec08159758325068579f709eaab26b23ecb34456f /ext
parent51351b8f77afa1d06957ce64847032769fd98e83 (diff)
merge revision(s) 57180: [Backport #13247]
memory_status.c: support old Mac OS * ext/-test-/memory_status/memory_status.c (read_status): use TASK_BASIC_INFO instead of MACH_TASK_BASIC_INFO on old Mac OS. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_4@58626 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext')
-rw-r--r--ext/-test-/memory_status/memory_status.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/ext/-test-/memory_status/memory_status.c b/ext/-test-/memory_status/memory_status.c
index 80e2648992..23c4806472 100644
--- a/ext/-test-/memory_status/memory_status.c
+++ b/ext/-test-/memory_status/memory_status.c
@@ -17,12 +17,19 @@ read_status(VALUE self)
#if defined __APPLE__
VALUE rss;
kern_return_t error;
- mach_msg_type_number_t out_count;
+# if defined MACH_TASK_BASIC_INFO
+ const task_flavor_t flavor = MACH_TASK_BASIC_INFO;
+ mach_msg_type_number_t out_count = MACH_TASK_BASIC_INFO_COUNT;
mach_task_basic_info_data_t taskinfo;
+# else
+ const task_flavor_t flavor = TASK_BASIC_INFO;
+ mach_msg_type_number_t out_count = TASK_BASIC_INFO_COUNT;
+ task_basic_info_data_t taskinfo;
+# endif
taskinfo.virtual_size = 0;
- out_count = MACH_TASK_BASIC_INFO_COUNT;
- error = task_info(mach_task_self(), MACH_TASK_BASIC_INFO,
+ taskinfo.resident_size = 0;
+ error = task_info(mach_task_self(), flavor,
(task_info_t)&taskinfo, &out_count);
if (error != KERN_SUCCESS) return Qnil;
size = ULL2NUM(taskinfo.virtual_size);