aboutsummaryrefslogtreecommitdiffstats
path: root/src/sysdep.c
diff options
context:
space:
mode:
authorGlenn Morris2013-03-06 00:01:47 -0800
committerGlenn Morris2013-03-06 00:01:47 -0800
commit0bafabe7b28b6ee05cf052579e398102fd73e0eb (patch)
tree13c16af2d2c15142e870351d150706ef4f86618a /src/sysdep.c
parent047658249dd5067cb4366659f037d5f75a955707 (diff)
parent0845a75c6a624f88e232499a4c1dd7ff3c6eef5a (diff)
downloademacs-0bafabe7b28b6ee05cf052579e398102fd73e0eb.tar.gz
emacs-0bafabe7b28b6ee05cf052579e398102fd73e0eb.zip
Merge from emacs-24; up to 2012-12-25T11:37:21Z!dmantipov@yandex.ru
Diffstat (limited to 'src/sysdep.c')
-rw-r--r--src/sysdep.c16
1 files changed, 3 insertions, 13 deletions
diff --git a/src/sysdep.c b/src/sysdep.c
index c4b937183ca..fe6371623a9 100644
--- a/src/sysdep.c
+++ b/src/sysdep.c
@@ -2541,20 +2541,12 @@ list_system_processes (void)
2541 return proclist; 2541 return proclist;
2542} 2542}
2543 2543
2544#elif defined BSD_SYSTEM 2544#elif defined DARWIN_OS || defined __FreeBSD__
2545
2546/* OpenBSD 4.9 and earlier do not have KERN_PROC. Approximate it with
2547 KERN_PROC2. MirBSD's KERN_PROC seems to be busted. */
2548# if !defined KERN_PROC || defined __MirBSD__
2549# undef KERN_PROC
2550# define KERN_PROC KERN_PROC2
2551# define kinfo_proc kinfo_proc2
2552# endif
2553 2545
2554Lisp_Object 2546Lisp_Object
2555list_system_processes (void) 2547list_system_processes (void)
2556{ 2548{
2557#if defined DARWIN_OS || defined __NetBSD__ || defined __OpenBSD__ 2549#ifdef DARWIN_OS
2558 int mib[] = {CTL_KERN, KERN_PROC, KERN_PROC_ALL}; 2550 int mib[] = {CTL_KERN, KERN_PROC, KERN_PROC_ALL};
2559#else 2551#else
2560 int mib[] = {CTL_KERN, KERN_PROC, KERN_PROC_PROC}; 2552 int mib[] = {CTL_KERN, KERN_PROC, KERN_PROC_PROC};
@@ -2580,10 +2572,8 @@ list_system_processes (void)
2580 len /= sizeof (struct kinfo_proc); 2572 len /= sizeof (struct kinfo_proc);
2581 for (i = 0; i < len; i++) 2573 for (i = 0; i < len; i++)
2582 { 2574 {
2583#if defined DARWIN_OS || defined __NetBSD__ 2575#ifdef DARWIN_OS
2584 proclist = Fcons (make_fixnum_or_float (procs[i].kp_proc.p_pid), proclist); 2576 proclist = Fcons (make_fixnum_or_float (procs[i].kp_proc.p_pid), proclist);
2585#elif defined __OpenBSD__
2586 proclist = Fcons (make_fixnum_or_float (procs[i].p_pid), proclist);
2587#else 2577#else
2588 proclist = Fcons (make_fixnum_or_float (procs[i].ki_pid), proclist); 2578 proclist = Fcons (make_fixnum_or_float (procs[i].ki_pid), proclist);
2589#endif 2579#endif