Fix default compose table initialization
Subsystems (2)
PATCH 1/1 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.
drivers/char/defkeymap.c_shipped renamed from drivers/char/defkeymap.c_shipped.orig +34 -34
@@ -223,40 +223,40 @@ }; 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;
drivers/acorn/char/defkeymap-l7200.c renamed from drivers/acorn/char/defkeymap-l7200.c.orig +34 -34
74 lines not on this page · raw message
drivers/s390/char/defkeymap.c renamed from drivers/s390/char/defkeymap.c.orig +2 -2
@@ -151,8 +151,8 @@ };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 ;
Quoted 3 lines · * Samuel Thibault ([email protected]) wrote:
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.
I think this patch breaks the s390 build, no?
-chris
Quoted 169 lines
Signed-off-by Samuel Thibault <[email protected]>drivers/char/defkeymap.c_shipped renamed from drivers/char/defkeymap.c_shipped.orig +34
-34@@ -223,40 +223,40 @@ }; 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;drivers/acorn/char/defkeymap-l7200.c renamed from drivers/acorn/char/defkeymap-l7200.c.orig +34
-34@@ -347,40 +347,40 @@ };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 ;drivers/s390/char/defkeymap.c renamed from drivers/s390/char/defkeymap.c.orig +2
-2@@ -151,8 +151,8 @@ };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 ;
Quoted 6 lines · Chris Wright, le Wed 12 Mar 2008 14:20:04 -0700, a écrit :
Quoted 3 lines · * Samuel Thibault ([email protected]) wrote:
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.
I think this patch breaks the s390 build, no?
Yes, that was reported and fixed iirc.
Samuel
Quoted 9 lines · * Samuel Thibault ([email protected]) wrote:
Quoted 6 lines · Chris Wright, le Wed 12 Mar 2008 14:20:04 -0700, a écrit :
Quoted 3 lines · * Samuel Thibault ([email protected]) wrote:
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.
I think this patch breaks the s390 build, no?
Yes, that was reported and fixed iirc.
Care to send that along to stable, otherwise we'll just drop this one from 2.6.24-stable queue.
thanks,
-chris
Quoted 7 lines · Chris Wright, le Wed 12 Mar 2008 15:47:42 -0700, a écrit :
Quoted 6 lines · * Samuel Thibault ([email protected]) wrote:
Quoted 5 lines · Chris Wright, le Wed 12 Mar 2008 14:20:04 -0700, a écrit :
Quoted 3 lines · * Samuel Thibault ([email protected]) wrote:
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.
Quoted 6 lines
Quoted 3 lines
Quoted 1 line
I think this patch breaks the s390 build, no?
Yes, that was reported and fixed iirc.
Care to send that along to stable, otherwise we'll just drop this one from 2.6.24-stable queue.
Ah, stable@ wasn't in the Cc list of the fix indeed, I've bounced the mail.
Samuel
Quoted 2 lines · * Samuel Thibault ([email protected]) wrote:
Ah, stable@ wasn't in the Cc list of the fix indeed, I've bounced the mail.
perfect, thanks
-chris