Bug #5887
NPE when applying "SHIFT-V" event
100%
Related issues
History
#1 Updated by Vladimir Tsichevski over 2 years ago
The following test program:
DEFINE FRAME f. APPLY "SHIFT-V" TO FRAME f.
crashes the client with NPE.
#2 Updated by Greg Shah over 2 years ago
- Assignee set to Vladimir Tsichevski
#4 Updated by Vladimir Tsichevski over 2 years ago
- Status changed from New to WIP
#5 Updated by Vladimir Tsichevski over 2 years ago
- % Done changed from 0 to 100
- Status changed from WIP to Review
Fixed in 3821c rev. 13295.
#6 Updated by Greg Shah over 2 years ago
Sergey/Hynek/Constantin: Please review.
#7 Updated by Constantin Asofiei over 2 years ago
Vladimir, the changes look good. My problem is that if I test all ASCII codes (with extended):
def var ch as char. def var i as int. output to a.txt. do i = 0 to 255: if key-code("SHIFT-" + chr(i)) <> i then message "fail" i chr(i) key-code("SHIFT-" + chr(i)). end. output close.
it fails these in OE:
fail 0 -1 fail 224 à 192 fail 225 á 193 fail 226 â 194 fail 227 ã 195 fail 228 ä 196 fail 229 å 197 fail 230 æ 198 fail 231 ç 199 fail 232 è 200 fail 233 é 201 fail 234 ê 202 fail 235 ë 203 fail 236 ì 204 fail 237 í 205 fail 238 î 206 fail 239 ï 207 fail 240 ð 208 fail 241 ñ 209 fail 242 ò 210 fail 243 ó 211 fail 244 ô 212 fail 245 õ 213 fail 246 ö 214 fail 248 ø 216 fail 249 ù 217 fail 250 ú 218 fail 251 û 219 fail 252 ü 220 fail 253 ý 221 fail 254 þ 222 fail 255 ÿ 89
How does FWD behave?
#8 Updated by Vladimir Tsichevski over 2 years ago
Constantin Asofiei wrote:
Vladimir, the changes look good. My problem is that if I test all ASCII codes (with extended):
[...]
it fails these in OE:
[...]
My output in OE is different:
fail 0 -1 fail 97 a 65 fail 98 b 66 fail 99 c 67 fail 100 d 68 fail 101 e 69 fail 102 f 70 fail 103 g 71 fail 104 h 72 fail 105 i 73 fail 106 j 74 fail 107 k 75 fail 108 l 76 fail 109 m 77 fail 110 n 78 fail 111 o 79 fail 112 p 80 fail 113 q 81 fail 114 r 82 fail 115 s 83 fail 116 t 84 fail 117 u 85 fail 118 v 86 fail 119 w 87 fail 120 x 88 fail 121 y 89 fail 122 z 90 fail 224 à 192 fail 225 á 193 fail 226 â 194 fail 227 ã 195 fail 228 ä 196 fail 229 å 197 fail 230 æ 198 fail 231 ç 199 fail 232 è 200 fail 233 é 201 fail 234 ê 202 fail 235 ë 203 fail 236 ì 204 fail 237 í 205 fail 238 î 206 fail 239 ï 207 fail 240 ð 208 fail 241 ñ 209 fail 242 ò 210 fail 243 ó 211 fail 244 ô 212 fail 245 õ 213 fail 246 ö 214 fail 248 ø 216 fail 249 ù 217 fail 250 ú 218 fail 251 û 219 fail 252 ü 220 fail 253 ý 221 fail 254 þ 222 fail 255 ÿ 89
How does FWD behave?
#9 Updated by Constantin Asofiei over 2 years ago
Yes, I forgot to mention that I removed the a-z case, as that is a false negative.
#10 Updated by Vladimir Tsichevski over 2 years ago
Currently FWD behaves differently:
1. 0 -> 768 instead of 0 -> -1
2. 1-31 -> -1 instead of no change
3. 127-223 -> -1 or 768 instead of no change
4. 255 -> -1 instead of 89
I can fix cases 1 and 2 easily, but in cases 3 and 4 one-byte values are transformed to two-byte unicode values, so I am not sure if I have to fix these,
#11 Updated by Constantin Asofiei over 2 years ago
OK, please run this program in OE, with Windows Chui, Windows GUI, and Linux Chui, save the output and commit it to a folder in testcases/uast/keyboards/
. After that, create a task for it where you can document the differences.
#12 Updated by Vladimir Tsichevski over 2 years ago
Constantin Asofiei wrote:
OK, please run this program in OE, with Windows Chui, Windows GUI, and Linux Chui, save the output and commit it to a folder in
testcases/uast/keyboards/
. After that, create a task for it where you can document the differences.
Will do this ASAP.
Meanwhile, I fixed the cases 1 and 2 in 3821c rev. 13297. Please, review.
#13 Updated by Vladimir Tsichevski over 2 years ago
Vladimir Tsichevski wrote:
Constantin Asofiei wrote:
OK, please run this program in OE, with Windows Chui, Windows GUI, and Linux Chui, save the output and commit it to a folder in
testcases/uast/keyboards/
. After that, create a task for it where you can document the differences.Will do this ASAP.
Meanwhile, I fixed the cases 1 and 2 in 3821c rev. 13297. Please, review.
Some additional minor fixes are also in rev. 13298.
#14 Updated by Vladimir Tsichevski over 2 years ago
- Related to Bug #5918: KEY-CODE for SHIFT-x labels added
#15 Updated by Vladimir Tsichevski over 2 years ago
Constantin Asofiei wrote:
OK, please run this program in OE, with Windows Chui, Windows GUI, and Linux Chui, save the output and commit it to a folder in
testcases/uast/keyboards/
. After that, create a task for it where you can document the differences.
The new issue is #5918.
#16 Updated by Constantin Asofiei over 2 years ago
- Status changed from Review to Test
Thanks Vladimir, the changes are good.
#17 Updated by Greg Shah over 2 years ago
- Status changed from Test to Closed