<rdar://problem/13963648>
Changes after feedback:
Directly use function pointer, just to be safer on 10.8.
llvm-svn: 182529
diff --git a/lldb/tools/debugserver/source/MacOSX/MachVMMemory.cpp b/lldb/tools/debugserver/source/MacOSX/MachVMMemory.cpp
index d9771a9..af82fc9 100644
--- a/lldb/tools/debugserver/source/MacOSX/MachVMMemory.cpp
+++ b/lldb/tools/debugserver/source/MacOSX/MachVMMemory.cpp
@@ -452,9 +452,12 @@
mach_msg_type_number_t info_count;
task_vm_info_data_t vm_info;
- if (dlsym(RTLD_NEXT, "task_purgable_info") != NULL )
+ typedef kern_return_t (*task_purgable_info_type) (task_t, task_purgable_info_t *);
+ task_purgable_info_type task_purgable_info_ptr = NULL;
+ task_purgable_info_ptr = (task_purgable_info_type)dlsym(RTLD_NEXT, "task_purgable_info");
+ if (task_purgable_info_ptr != NULL)
{
- kr = task_purgable_info(task, &purgeable_info);
+ kr = (*task_purgable_info_ptr)(task, &purgeable_info);
if (kr == KERN_SUCCESS) {
purgeable_sum = SumVMPurgeableInfo(&purgeable_info);
purgeable = purgeable_sum;
@@ -474,6 +477,7 @@
anonymous = 0;
}
}
+
#endif
}