return true;
}
+static void init_task_window_info(struct task_info *task, struct proc_app_window_info window)
+{
+ assert(task);
+
+ task->window_pid = window.pid;
+ task->x = window.x;
+ task->y = window.y;
+ task->z = window.z;
+ task->w = window.w;
+ task->h = window.h;
+ task->layer = window.layer;
+ task->opaque = window.opaque;
+ task->visibility = window.visibility;
+ task->is_transformed = window.is_transformed;
+ task->alpha = window.alpha;
+ task->is_focused = window.is_focused;
+ task->is_mapped = window.is_mapped;
+}
+
static GArray *lowmem_get_task_info_app(int killer_flags, int start_oom, int end_oom)
{
GSList *iter = NULL;
continue;
}
+ memset(&task, 0, sizeof(struct task_info));
+
task.pid = pai->main_pid;
if (pai->childs) {
task.pids = g_array_new(false, false, sizeof(pid_t));
task.oom_score_lru = pai->memory.oom_score_adj;
}
+ init_task_window_info(&task, pai->window);
g_array_append_val(lowmem_task_info_app_array, task);
}
if (oom_score_adj > OOMADJ_SU && oom_score_adj <= OOMADJ_APP_MAX)
continue;
+ memset(&task, 0, sizeof(struct task_info));
+
/**
* Currently, for tasks in the memory cgroup,
* do not consider multiple tasks with one pgid.