--- src/util.cc 2025-08-19 02:02:15.000000000 +0800 +++ src/util.cc 2025-08-20 15:48:55.000000000 +0800 @@ -2116,14 +2116,24 @@ #endif #ifdef HAVE_DARWIN +#ifdef MACH_TASK_BASIC_INFO struct mach_task_basic_info t_info; - mach_msg_type_number_t t_info_count = MACH_TASK_BASIC_INFO; + mach_msg_type_number_t t_info_count = MACH_TASK_BASIC_INFO_COUNT; if ( KERN_SUCCESS != task_info(mach_task_self(), MACH_TASK_BASIC_INFO, (task_info_t)&t_info, &t_info_count) ) ret_total = 0; else ret_total = t_info.resident_size; #else + struct task_basic_info t_info; + mach_msg_type_number_t t_info_count = TASK_BASIC_INFO_COUNT; + + if ( KERN_SUCCESS != task_info(mach_task_self(), TASK_BASIC_INFO, (task_info_t)&t_info, &t_info_count) ) + ret_total = 0; + else + ret_total = t_info.resident_size; +#endif +#else struct rusage r; getrusage(RUSAGE_SELF, &r);