mirror of
https://github.com/0intro/wmii
synced 2025-03-17 20:23:08 +03:00
Ok, I *really* fixed the swapping bug this time.
This commit is contained in:
parent
722d23bf52
commit
eee18d7bc9
20
frame.c
20
frame.c
@ -75,11 +75,21 @@ swap_frames(Frame *fa, Frame *fb) {
|
||||
for(fp_b = &a->frame; *fp_b; fp_b=&(*fp_b)->anext)
|
||||
if(*fp_b == fb) break;
|
||||
|
||||
ft = fa->anext;
|
||||
*fp_a = fb;
|
||||
fa->anext = fb->anext;
|
||||
*fp_b = fa;
|
||||
fb->anext = ft;
|
||||
if(fa->anext == fb) {
|
||||
*fp_a = fb;
|
||||
fa->anext = fb->anext;
|
||||
fb->anext = fa;
|
||||
} else if(fb->anext == fa) {
|
||||
*fp_b = fa;
|
||||
fb->anext = fa->anext;
|
||||
fa->anext = fb;
|
||||
} else {
|
||||
*fp_a = fb;
|
||||
*fp_b = fa;
|
||||
ft = fb->anext;
|
||||
fb->anext = fa->anext;
|
||||
fa->anext = ft;
|
||||
}
|
||||
|
||||
fb->area = fa->area;
|
||||
fa->area = a;
|
||||
|
Loading…
x
Reference in New Issue
Block a user