Project

General

Profile

Bug #5887

NPE when applying "SHIFT-V" event

Added by Vladimir Tsichevski over 2 years ago. Updated over 2 years ago.

Status:
Closed
Priority:
Normal
Target version:
-
Start date:
Due date:
% Done:

100%

billable:
No
vendor_id:
GCD
case_num:
version_reported:
version_resolved:

Related issues

Related to User Interface - Bug #5918: KEY-CODE for SHIFT-x labels New

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

Also available in: Atom PDF