Make priority change work
authorMamoru TASAKA <mtasaka@fedoraproject.org>
Wed, 3 Jan 2018 12:41:24 +0000 (21:41 +0900)
committerAndriy Grytsenko <andrej@rep.kiev.ua>
Sun, 7 Jan 2018 20:23:44 +0000 (22:23 +0200)
To get pid number from GTK selection, column id must be set to COLUMN_PID.
Also, to redirect g_spawn_command_line_sync() result to /dev/null using
shell-style redirect, shell command must be used, otherwise such redirection
is regarded as command's arguments.

src/callbacks.c
src/xfce-taskmanager-linux.c

index dfaff57..315852e 100644 (file)
@@ -103,7 +103,7 @@ void handle_prio_menu(GtkWidget *widget, gchar *prio)
 
     if(gtk_tree_selection_get_selected(selection, &model, &iter))
     {
-        gtk_tree_model_get(model, &iter, 1, &task_id, -1);
+        gtk_tree_model_get(model, &iter, COLUMN_PID, &task_id, -1);
 
         set_priority_to_task(atoi(task_id), atoi(prio));
         refresh_task_list();
index 36656fb..dd490c1 100644 (file)
@@ -306,7 +306,7 @@ void set_priority_to_task(gint task_id, gint prio)
     {
        int status = 0;
         gchar command[128] = "";
-        g_sprintf(command, "renice %d %d > /dev/null", prio, task_id);
+        g_sprintf(command, "sh -c \"renice %d %d > /dev/null\"", prio, task_id);
 
         if( ! g_spawn_command_line_sync(command, NULL, NULL, &status, NULL) ||status )
             show_error(_("Couldn't set priority %d to the task with ID %d"), prio, task_id);