*fix* segfault when cycling through tasks and taskbarname is enabled
git-svn-id: http://tint2.googlecode.com/svn/trunk@628 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
This commit is contained in:
parent
25d1555150
commit
97001249b5
1 changed files with 6 additions and 4 deletions
|
@ -411,16 +411,17 @@ Task *next_task(Task *tsk)
|
|||
if (tsk == 0)
|
||||
return 0;
|
||||
|
||||
GSList *l0;
|
||||
GSList *l0, *lfirst_tsk;
|
||||
Task *tsk1;
|
||||
Taskbar* tskbar = tsk->area.parent;
|
||||
|
||||
l0 = tskbar->area.list;
|
||||
if (taskbarname_enabled) l0 = l0->next;
|
||||
lfirst_tsk = l0;
|
||||
for (; l0 ; l0 = l0->next) {
|
||||
tsk1 = l0->data;
|
||||
if (tsk1 == tsk) {
|
||||
if (l0->next == 0) l0 = tskbar->area.list;
|
||||
if (l0->next == 0) l0 = lfirst_tsk;
|
||||
else l0 = l0->next;
|
||||
return l0->data;
|
||||
}
|
||||
|
@ -434,17 +435,18 @@ Task *prev_task(Task *tsk)
|
|||
if (tsk == 0)
|
||||
return 0;
|
||||
|
||||
GSList *l0;
|
||||
GSList *l0, *lfirst_tsk;
|
||||
Task *tsk1, *tsk2;
|
||||
Taskbar* tskbar = tsk->area.parent;
|
||||
|
||||
tsk2 = 0;
|
||||
l0 = tskbar->area.list;
|
||||
if (taskbarname_enabled) l0 = l0->next;
|
||||
lfirst_tsk = l0;
|
||||
for (; l0 ; l0 = l0->next) {
|
||||
tsk1 = l0->data;
|
||||
if (tsk1 == tsk) {
|
||||
if (l0 == tskbar->area.list) {
|
||||
if (l0 == lfirst_tsk) {
|
||||
l0 = g_slist_last ( l0 );
|
||||
tsk2 = l0->data;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue