folly: fix initialization for CLOCK_PROCESS_CPUTIME_ID emulation on macOS
authorWez Furlong <wez@fb.com>
Sun, 17 Jul 2016 06:02:32 +0000 (23:02 -0700)
committerFacebook Github Bot 2 <facebook-github-bot-2-bot@fb.com>
Sun, 17 Jul 2016 06:08:26 +0000 (23:08 -0700)
Summary:
this fixes TimeTest on macOS.

The problem was that `task_info_count` is an in/out parameter and it wasn't correctly initialized due to a typo.  The lack of initialization meant that the `task_info()` call would fail at runtime.

Reviewed By: yfeldblum

Differential Revision: D3576262

fbshipit-source-id: 8388fa3c5020309d64a0fa7e01fd6cea80200219

folly/portability/Time.cpp

index da44db618eb9d46b2a35b957cc484d102c8af58b..bf165f419fbb50d3b6a680c96c9f313365618bfa 100755 (executable)
@@ -50,8 +50,7 @@ static std::chrono::nanoseconds time_value_to_ns(time_value_t t) {
 static int clock_process_cputime(struct timespec* ts) {
   // Get CPU usage for live threads.
   task_thread_times_info thread_times_info;
 static int clock_process_cputime(struct timespec* ts) {
   // Get CPU usage for live threads.
   task_thread_times_info thread_times_info;
-  mach_msg_type_number_t thread_times_info_count;
-  TASK_THREAD_TIMES_INFO_COUNT;
+  mach_msg_type_number_t thread_times_info_count = TASK_THREAD_TIMES_INFO_COUNT;
   kern_return_t kern_result = task_info(
       mach_task_self(),
       TASK_THREAD_TIMES_INFO,
   kern_return_t kern_result = task_info(
       mach_task_self(),
       TASK_THREAD_TIMES_INFO,