Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5ce2087e authored by Samuel Thibault's avatar Samuel Thibault Committed by Linus Torvalds
Browse files

Fix default compose table initialization



Oddly enough, unsigned int c = '\300'; puts a "negative" value in c, not
0300...  This fixes the default unicode compose table by using integers
instead of character constants.

Signed-off-by: default avatarSamuel Thibault <samuel.thibault@ens-lyon.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent cad226b8
Loading
Loading
Loading
Loading
+34 −34
Original line number Diff line number Diff line
@@ -347,40 +347,40 @@ char *func_table[MAX_NR_FUNC] = {
};

struct kbdiacruc accent_table[MAX_DIACR] = {
	{'`', 'A', '\300'},	{'`', 'a', '\340'},
	{'\'', 'A', '\301'},	{'\'', 'a', '\341'},
	{'^', 'A', '\302'},	{'^', 'a', '\342'},
	{'~', 'A', '\303'},	{'~', 'a', '\343'},
	{'"', 'A', '\304'},	{'"', 'a', '\344'},
	{'O', 'A', '\305'},	{'o', 'a', '\345'},
	{'0', 'A', '\305'},	{'0', 'a', '\345'},
	{'A', 'A', '\305'},	{'a', 'a', '\345'},
	{'A', 'E', '\306'},	{'a', 'e', '\346'},
	{',', 'C', '\307'},	{',', 'c', '\347'},
	{'`', 'E', '\310'},	{'`', 'e', '\350'},
	{'\'', 'E', '\311'},	{'\'', 'e', '\351'},
	{'^', 'E', '\312'},	{'^', 'e', '\352'},
	{'"', 'E', '\313'},	{'"', 'e', '\353'},
	{'`', 'I', '\314'},	{'`', 'i', '\354'},
	{'\'', 'I', '\315'},	{'\'', 'i', '\355'},
	{'^', 'I', '\316'},	{'^', 'i', '\356'},
	{'"', 'I', '\317'},	{'"', 'i', '\357'},
	{'-', 'D', '\320'},	{'-', 'd', '\360'},
	{'~', 'N', '\321'},	{'~', 'n', '\361'},
	{'`', 'O', '\322'},	{'`', 'o', '\362'},
	{'\'', 'O', '\323'},	{'\'', 'o', '\363'},
	{'^', 'O', '\324'},	{'^', 'o', '\364'},
	{'~', 'O', '\325'},	{'~', 'o', '\365'},
	{'"', 'O', '\326'},	{'"', 'o', '\366'},
	{'/', 'O', '\330'},	{'/', 'o', '\370'},
	{'`', 'U', '\331'},	{'`', 'u', '\371'},
	{'\'', 'U', '\332'},	{'\'', 'u', '\372'},
	{'^', 'U', '\333'},	{'^', 'u', '\373'},
	{'"', 'U', '\334'},	{'"', 'u', '\374'},
	{'\'', 'Y', '\335'},	{'\'', 'y', '\375'},
	{'T', 'H', '\336'},	{'t', 'h', '\376'},
	{'s', 's', '\337'},	{'"', 'y', '\377'},
	{'s', 'z', '\337'},	{'i', 'j', '\377'},
	{'`', 'A', 0300},	{'`', 'a', 0340},
	{'\'', 'A', 0301},	{'\'', 'a', 0341},
	{'^', 'A', 0302},	{'^', 'a', 0342},
	{'~', 'A', 0303},	{'~', 'a', 0343},
	{'"', 'A', 0304},	{'"', 'a', 0344},
	{'O', 'A', 0305},	{'o', 'a', 0345},
	{'0', 'A', 0305},	{'0', 'a', 0345},
	{'A', 'A', 0305},	{'a', 'a', 0345},
	{'A', 'E', 0306},	{'a', 'e', 0346},
	{',', 'C', 0307},	{',', 'c', 0347},
	{'`', 'E', 0310},	{'`', 'e', 0350},
	{'\'', 'E', 0311},	{'\'', 'e', 0351},
	{'^', 'E', 0312},	{'^', 'e', 0352},
	{'"', 'E', 0313},	{'"', 'e', 0353},
	{'`', 'I', 0314},	{'`', 'i', 0354},
	{'\'', 'I', 0315},	{'\'', 'i', 0355},
	{'^', 'I', 0316},	{'^', 'i', 0356},
	{'"', 'I', 0317},	{'"', 'i', 0357},
	{'-', 'D', 0320},	{'-', 'd', 0360},
	{'~', 'N', 0321},	{'~', 'n', 0361},
	{'`', 'O', 0322},	{'`', 'o', 0362},
	{'\'', 'O', 0323},	{'\'', 'o', 0363},
	{'^', 'O', 0324},	{'^', 'o', 0364},
	{'~', 'O', 0325},	{'~', 'o', 0365},
	{'"', 'O', 0326},	{'"', 'o', 0366},
	{'/', 'O', 0330},	{'/', 'o', 0370},
	{'`', 'U', 0331},	{'`', 'u', 0371},
	{'\'', 'U', 0332},	{'\'', 'u', 0372},
	{'^', 'U', 0333},	{'^', 'u', 0373},
	{'"', 'U', 0334},	{'"', 'u', 0374},
	{'\'', 'Y', 0335},	{'\'', 'y', 0375},
	{'T', 'H', 0336},	{'t', 'h', 0376},
	{'s', 's', 0337},	{'"', 'y', 0377},
	{'s', 'z', 0337},	{'i', 'j', 0377},
};

unsigned int accent_table_size = 68;
+34 −34
Original line number Diff line number Diff line
@@ -223,40 +223,40 @@ char *func_table[MAX_NR_FUNC] = {
};

struct kbdiacruc accent_table[MAX_DIACR] = {
	{'`', 'A', '\300'},	{'`', 'a', '\340'},
	{'\'', 'A', '\301'},	{'\'', 'a', '\341'},
	{'^', 'A', '\302'},	{'^', 'a', '\342'},
	{'~', 'A', '\303'},	{'~', 'a', '\343'},
	{'"', 'A', '\304'},	{'"', 'a', '\344'},
	{'O', 'A', '\305'},	{'o', 'a', '\345'},
	{'0', 'A', '\305'},	{'0', 'a', '\345'},
	{'A', 'A', '\305'},	{'a', 'a', '\345'},
	{'A', 'E', '\306'},	{'a', 'e', '\346'},
	{',', 'C', '\307'},	{',', 'c', '\347'},
	{'`', 'E', '\310'},	{'`', 'e', '\350'},
	{'\'', 'E', '\311'},	{'\'', 'e', '\351'},
	{'^', 'E', '\312'},	{'^', 'e', '\352'},
	{'"', 'E', '\313'},	{'"', 'e', '\353'},
	{'`', 'I', '\314'},	{'`', 'i', '\354'},
	{'\'', 'I', '\315'},	{'\'', 'i', '\355'},
	{'^', 'I', '\316'},	{'^', 'i', '\356'},
	{'"', 'I', '\317'},	{'"', 'i', '\357'},
	{'-', 'D', '\320'},	{'-', 'd', '\360'},
	{'~', 'N', '\321'},	{'~', 'n', '\361'},
	{'`', 'O', '\322'},	{'`', 'o', '\362'},
	{'\'', 'O', '\323'},	{'\'', 'o', '\363'},
	{'^', 'O', '\324'},	{'^', 'o', '\364'},
	{'~', 'O', '\325'},	{'~', 'o', '\365'},
	{'"', 'O', '\326'},	{'"', 'o', '\366'},
	{'/', 'O', '\330'},	{'/', 'o', '\370'},
	{'`', 'U', '\331'},	{'`', 'u', '\371'},
	{'\'', 'U', '\332'},	{'\'', 'u', '\372'},
	{'^', 'U', '\333'},	{'^', 'u', '\373'},
	{'"', 'U', '\334'},	{'"', 'u', '\374'},
	{'\'', 'Y', '\335'},	{'\'', 'y', '\375'},
	{'T', 'H', '\336'},	{'t', 'h', '\376'},
	{'s', 's', '\337'},	{'"', 'y', '\377'},
	{'s', 'z', '\337'},	{'i', 'j', '\377'},
	{'`', 'A', 0300},	{'`', 'a', 0340},
	{'\'', 'A', 0301},	{'\'', 'a', 0341},
	{'^', 'A', 0302},	{'^', 'a', 0342},
	{'~', 'A', 0303},	{'~', 'a', 0343},
	{'"', 'A', 0304},	{'"', 'a', 0344},
	{'O', 'A', 0305},	{'o', 'a', 0345},
	{'0', 'A', 0305},	{'0', 'a', 0345},
	{'A', 'A', 0305},	{'a', 'a', 0345},
	{'A', 'E', 0306},	{'a', 'e', 0346},
	{',', 'C', 0307},	{',', 'c', 0347},
	{'`', 'E', 0310},	{'`', 'e', 0350},
	{'\'', 'E', 0311},	{'\'', 'e', 0351},
	{'^', 'E', 0312},	{'^', 'e', 0352},
	{'"', 'E', 0313},	{'"', 'e', 0353},
	{'`', 'I', 0314},	{'`', 'i', 0354},
	{'\'', 'I', 0315},	{'\'', 'i', 0355},
	{'^', 'I', 0316},	{'^', 'i', 0356},
	{'"', 'I', 0317},	{'"', 'i', 0357},
	{'-', 'D', 0320},	{'-', 'd', 0360},
	{'~', 'N', 0321},	{'~', 'n', 0361},
	{'`', 'O', 0322},	{'`', 'o', 0362},
	{'\'', 'O', 0323},	{'\'', 'o', 0363},
	{'^', 'O', 0324},	{'^', 'o', 0364},
	{'~', 'O', 0325},	{'~', 'o', 0365},
	{'"', 'O', 0326},	{'"', 'o', 0366},
	{'/', 'O', 0330},	{'/', 'o', 0370},
	{'`', 'U', 0331},	{'`', 'u', 0371},
	{'\'', 'U', 0332},	{'\'', 'u', 0372},
	{'^', 'U', 0333},	{'^', 'u', 0373},
	{'"', 'U', 0334},	{'"', 'u', 0374},
	{'\'', 'Y', 0335},	{'\'', 'y', 0375},
	{'T', 'H', 0336},	{'t', 'h', 0376},
	{'s', 's', 0337},	{'"', 'y', 0377},
	{'s', 'z', 0337},	{'i', 'j', 0377},
};

unsigned int accent_table_size = 68;
+2 −2
Original line number Diff line number Diff line
@@ -151,8 +151,8 @@ char *func_table[MAX_NR_FUNC] = {
};

struct kbdiacruc accent_table[MAX_DIACR] = {
	{'^', 'c', '\003'},	{'^', 'd', '\004'},
	{'^', 'z', '\032'},	{'^', '\012', '\000'},
	{'^', 'c', 0003},	{'^', 'd', 0004},
	{'^', 'z', 0032},	{'^', 0012', 0000},
};

unsigned int accent_table_size = 4;