Re: [wmii] snap: 20060329 -- shortcuts bug

From: Stefan Tibus <sjti_AT_gmx.net>
Date: Thu, 30 Mar 2006 13:47:37 +0200

I added some code to update_keys to output the current keys at
the end of the function. This is my initial list upon starting wmii:
0: Mod4-Control-b
1: Mod4-Control-c
2: Mod4-Control-w,y
3: Mod4-Control-q,y
4: Mod4-Control-p
5: Mod4-Control-a
6: Mod4-Control-Left
7: Mod4-Control-Right
8: Mod4-Shift-Left
9: Mod4-Shift-Right
10: Mod4-Shift-Down
11: Mod4-Shift-Up
12: Mod4-space
13: Mod4-Shift-space
14: Mod4-Return
15: Mod4-Left
16: Mod4-Right
17: Mod4-Down
18: Mod4-Up
19: Mod4-Control-n
20: Mod4-Control-m
21: Mod4-Control-s
22: Mod4-Control-e
23: Mod4-t
24: Mod4-Shift-t
25: Mod4-0
26: Mod4-1
27: Mod4-2
28: Mod4-3
29: Mod4-4
30: Mod4-5
31: Mod4-6
32: Mod4-7
33: Mod4-8
34: Mod4-9
35: Mod4-Shift-0
36: Mod4-Shift-1
37: Mod4-Shift-2
38: Mod4-Shift-3
39: Mod4-Shift-4
40: Mod4-Shift-5
41: Mod4-Shift-6
42: Mod4-Shift-7
43: Mod4-Shift-8
44: Mod4-Shift-9
45: Mod4-F1
46: Mod4-F2
47: Mod4-F3
48: Mod4-F4
49: Mod4-F5
50: Mod4-F6
51: Mod4-F7
52: Mod4-F8
53: Mod4-F9
54: Mod4-F10
55: Mod4-F11
56: Mod4-F12
57: Mod4-Shift-F1
58: Mod4-Shift-F2
59: Mod4-Shift-F3
60: Mod4-Shift-F4
61: Mod4-Shift-F5
62: Mod4-Shift-F6
63: Mod4-Shift-F7
64: Mod4-Shift-F8
65: Mod4-Shift-F9
66: Mod4-Shift-F10
67: Mod4-Shift-F11
68: Mod4-Shift-F12
69: Mod4-g
70: Mod4-Shift-g
71: Mod4-m
72: Mod4-Shift-m
73: Mod4-v
74: Mod4-Shift-v
75: Mod4-w
76: Mod4-Shift-w

When I press Escape-b wmiirc writes Mod4-Escape and Mod4-Return but stderr lists:
0: Mod4-w
1: Mod4-Shift-w
Doing wmiir read /def/keys seems to rerun update_keys (why?) and I get:
0: Mod4-Escape
1: Mod4-Return
This can be repeated then:
0: Mod4-Escape
1: Mod4-Return
Switching back to my normal configuration using Mod4-Escape prints:
0: Mod4-Escape
1: Mod4-Return
2: Mod4-Control-b
3: Mod4-Control-c
4: Mod4-Control-w,y
5: Mod4-Control-q,y
6: Mod4-Control-p
7: Mod4-Control-a
8: Mod4-Control-Left
9: Mod4-Control-Right
10: Mod4-Shift-Left
11: Mod4-Shift-Right
12: Mod4-Shift-Down
13: Mod4-Shift-Up
14: Mod4-space
15: Mod4-Shift-space
16: Mod4-Left
17: Mod4-Right
18: Mod4-Down
19: Mod4-Up
20: Mod4-Control-n
21: Mod4-Control-m
22: Mod4-Control-s
23: Mod4-Control-e
24: Mod4-t
25: Mod4-Shift-t
26: Mod4-0
27: Mod4-1
28: Mod4-2
29: Mod4-3
30: Mod4-4
31: Mod4-5
32: Mod4-6
33: Mod4-7
34: Mod4-8
35: Mod4-9
36: Mod4-Shift-0
37: Mod4-Shift-1
38: Mod4-Shift-2
39: Mod4-Shift-3
40: Mod4-Shift-4
41: Mod4-Shift-5
42: Mod4-Shift-6
43: Mod4-Shift-7
44: Mod4-Shift-8
45: Mod4-Shift-9
46: Mod4-F1
47: Mod4-F2
48: Mod4-F3
49: Mod4-F4
50: Mod4-F5
51: Mod4-F6
52: Mod4-F7
53: Mod4-F8
54: Mod4-F9
55: Mod4-F10
56: Mod4-F11
57: Mod4-F12
58: Mod4-Shift-F1
59: Mod4-Shift-F2
60: Mod4-Shift-F3
61: Mod4-Shift-F4
62: Mod4-Shift-F5
63: Mod4-Shift-F6
64: Mod4-Shift-F7
65: Mod4-Shift-F8
66: Mod4-Shift-F9
67: Mod4-Shift-F10
68: Mod4-Shift-F11
69: Mod4-Shift-F12
70: Mod4-g
71: Mod4-Shift-g
72: Mod4-m
73: Mod4-Shift-m
74: Mod4-v
75: Mod4-Shift-v
Mod4-w and Mod4-Shift-w are missing, but the list starts with Mod4-Escape
which should not be there and Mod4-Return which is not the first entry
written either. The first two entries are just unmodified! 1 key is missing
(maybe two if two would have been in both lists), the first 2 entries are
strange.
Doing wmiir read /def/keys again looses even more entries:
0: Mod4-v
1: Mod4-Shift-v
2: Mod4-w
3: Mod4-Shift-w
4: Mod4-Control-b
5: Mod4-Control-c
6: Mod4-Control-w,y
7: Mod4-Control-q,y
8: Mod4-Control-p
9: Mod4-Control-a
10: Mod4-Control-Left
11: Mod4-Control-Right
12: Mod4-Shift-Left
13: Mod4-Shift-Right
14: Mod4-Shift-Down
15: Mod4-Shift-Up
16: Mod4-space
17: Mod4-Shift-space
18: Mod4-Return
19: Mod4-Left
20: Mod4-Right
21: Mod4-Down
22: Mod4-Up
23: Mod4-Control-n
24: Mod4-Control-m
25: Mod4-Control-s
26: Mod4-Control-e
27: Mod4-t
28: Mod4-Shift-t
29: Mod4-0
30: Mod4-1
31: Mod4-2
32: Mod4-3
33: Mod4-4
34: Mod4-5
35: Mod4-6
36: Mod4-7
37: Mod4-8
38: Mod4-9
39: Mod4-Shift-0
40: Mod4-Shift-1
41: Mod4-Shift-2
42: Mod4-Shift-3
43: Mod4-Shift-4
44: Mod4-Shift-5
45: Mod4-Shift-6
46: Mod4-Shift-7
47: Mod4-Shift-8
48: Mod4-Shift-9
49: Mod4-F1
50: Mod4-F2
51: Mod4-F3
52: Mod4-F4
53: Mod4-F5
54: Mod4-F6
55: Mod4-F7
56: Mod4-F8
57: Mod4-F9
58: Mod4-F10
59: Mod4-F11
60: Mod4-F12
61: Mod4-Shift-F1
62: Mod4-Shift-F2
63: Mod4-Shift-F3
64: Mod4-Shift-F4
65: Mod4-Shift-F5
66: Mod4-Shift-F6
67: Mod4-Shift-F7
68: Mod4-Shift-F8
69: Mod4-Shift-F9
70: Mod4-Shift-F10
71: Mod4-Shift-F11
72: Mod4-Shift-F12
The list starts with the two entries that had been the last ones before,
Mod4-w and Mod4-Shift-w reappear and then goes on to the 68th entry of
what had been written to /def/keys (that makes 72). Mod4-(Shift-)g and
Mod4-(Shift-)m are missing. 4 keys are missing, the first 4 are strange.
Next call to wmiir read /def/keys looses two more:
0: Mod4-Shift-F11
1: Mod4-Shift-F12
2: Mod4-g
3: Mod4-Shift-g
4: Mod4-m
5: Mod4-Shift-m
6: Mod4-Control-b
7: Mod4-Control-c
8: Mod4-Control-w,y
9: Mod4-Control-q,y
10: Mod4-Control-p
11: Mod4-Control-a
12: Mod4-Control-Left
13: Mod4-Control-Right
14: Mod4-Shift-Left
15: Mod4-Shift-Right
16: Mod4-Shift-Down
17: Mod4-Shift-Up
18: Mod4-space
19: Mod4-Shift-space
20: Mod4-Return
21: Mod4-Left
22: Mod4-Right
23: Mod4-Down
24: Mod4-Up
25: Mod4-Control-n
26: Mod4-Control-m
27: Mod4-Control-s
28: Mod4-Control-e
29: Mod4-t
30: Mod4-Shift-t
31: Mod4-0
32: Mod4-1
33: Mod4-2
34: Mod4-3
35: Mod4-4
36: Mod4-5
37: Mod4-6
38: Mod4-7
39: Mod4-8
40: Mod4-9
41: Mod4-Shift-0
42: Mod4-Shift-1
43: Mod4-Shift-2
44: Mod4-Shift-3
45: Mod4-Shift-4
46: Mod4-Shift-5
47: Mod4-Shift-6
48: Mod4-Shift-7
49: Mod4-Shift-8
50: Mod4-Shift-9
51: Mod4-F1
52: Mod4-F2
53: Mod4-F3
54: Mod4-F4
55: Mod4-F5
56: Mod4-F6
57: Mod4-F7
58: Mod4-F8
59: Mod4-F9
60: Mod4-F10
61: Mod4-F11
62: Mod4-F12
63: Mod4-Shift-F1
64: Mod4-Shift-F2
65: Mod4-Shift-F3
66: Mod4-Shift-F4
67: Mod4-Shift-F5
68: Mod4-Shift-F6
69: Mod4-Shift-F7
70: Mod4-Shift-F8
The last two, plus the 4 ones missing before and the original list up
to entry 64 only -> 70. 6 keys are missing, the first 6 are strange.

On more invocations of wmiir read /def/keys I loose two keys each time
and at a certain point (last entry = 40) I get a segfault. The output
of wmiir read /def/keys has always been what I had written to it.
Maybe the problem is related to the deletion of keys?

Regards,
Stefan
Received on Thu Mar 30 2006 - 13:48:16 UTC

This archive was generated by hypermail 2.2.0 : Sun Jul 13 2008 - 16:01:45 UTC