Updating branch refs/heads/master to 44dc437214888be0b21d25830976a76a88a4bd20 (commit) from 10247249ebb5aec6041876151c53085ce20c6192 (commit)
commit 44dc437214888be0b21d25830976a76a88a4bd20 Author: Landry Breuil <lan...@rhaalovely.net> Date: Thu May 13 19:57:37 2010 +0200 correctly implement set_priority/send_signal_to_pid() src/task-manager-bsd.c | 36 ++++++++++++++++++++++-------------- 1 files changed, 22 insertions(+), 14 deletions(-) diff --git a/src/task-manager-bsd.c b/src/task-manager-bsd.c index 5c73d91..a7fd71f 100644 --- a/src/task-manager-bsd.c +++ b/src/task-manager-bsd.c @@ -203,27 +203,35 @@ gboolean send_signal_to_pid (guint task_id, gint signal) { gint ret = 0; if(task_id > 0 && signal != 0) - { - ret = kill(task_id, signal); -/* - if(ret != 0) - xfce_err(_("Couldn't send signal %d to the task with ID %d"), signal, task_id); -*/ } - return ret; + return (ret == 0) ? TRUE : FALSE; } gboolean set_priority_to_pid (guint task_id, gint prio) { - if(task_id > 0) + gint res; + switch (prio) { - gchar command[128] = ""; - /* TODO : syscall */ - g_snprintf(command, 128, "renice %d %d > /dev/null", prio, task_id); - - if(system(command) != 0) - ;//xfce_err(_("Couldn't set priority %d to the task with ID %d"), prio, task_id); + case XTM_PRIORITY_VERY_LOW: + prio = 15; + break; + case XTM_PRIORITY_LOW: + prio = 5; + break; + case XTM_PRIORITY_NORMAL: + prio = 0; + break; + case XTM_PRIORITY_HIGH: + prio = -5; + break; + case XTM_PRIORITY_VERY_HIGH: + prio = -15; + break; + default: + return TRUE; } + res = setpriority (PRIO_PROCESS, task_id, prio); + return (res == 0) ? TRUE : FALSE; } _______________________________________________ Xfce4-commits mailing list Xfce4-commits@xfce.org http://foo-projects.org/mailman/listinfo/xfce4-commits