Commit 6e35fc1
committed
fix: issue2551387 - TypeError: not indexable.
Fix crash due to uninitialized list element on a (Mini)FieldStorage
when unexpected input is posted via wsgi. This doesn't happen when
running roundup-server. It might happen under other front ends.
Moved the code that sets '.list = [] if .list == None' to the main
flow. Added an exception hander that logs the value of self.form if
self.form.list raises an AttributeError. This exception should never
happen if I understand the code correctly (but I probably don't).
Fixed a number of test cases that were broken because I was calling
Client and passing '[]' rather than a cgi.formStorage object.
Added test cases:
create a FileStorage (self.form) with .list = None.
check AttributeError exception and verify logging.
Problem reported and debugged by Christof Meerwald.1 parent e150d35 commit 6e35fc1
File tree
6 files changed
+125
-20
lines changed- roundup/cgi
- test
6 files changed
+125
-20
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
67 | 67 | | |
68 | 68 | | |
69 | 69 | | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
70 | 74 | | |
71 | 75 | | |
72 | 76 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
504 | 504 | | |
505 | 505 | | |
506 | 506 | | |
507 | | - | |
508 | | - | |
509 | | - | |
510 | | - | |
511 | 507 | | |
512 | 508 | | |
513 | 509 | | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
| 515 | + | |
| 516 | + | |
| 517 | + | |
| 518 | + | |
| 519 | + | |
| 520 | + | |
| 521 | + | |
| 522 | + | |
| 523 | + | |
| 524 | + | |
| 525 | + | |
| 526 | + | |
514 | 527 | | |
515 | 528 | | |
516 | 529 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
30 | 30 | | |
31 | 31 | | |
32 | 32 | | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
33 | 41 | | |
34 | 42 | | |
35 | 43 | | |
| |||
43 | 51 | | |
44 | 52 | | |
45 | 53 | | |
46 | | - | |
| 54 | + | |
47 | 55 | | |
48 | 56 | | |
49 | 57 | | |
| |||
4340 | 4348 | | |
4341 | 4349 | | |
4342 | 4350 | | |
| 4351 | + | |
| 4352 | + | |
| 4353 | + | |
| 4354 | + | |
| 4355 | + | |
| 4356 | + | |
| 4357 | + | |
| 4358 | + | |
4343 | 4359 | | |
4344 | 4360 | | |
4345 | 4361 | | |
| |||
4352 | 4368 | | |
4353 | 4369 | | |
4354 | 4370 | | |
| 4371 | + | |
| 4372 | + | |
| 4373 | + | |
| 4374 | + | |
| 4375 | + | |
| 4376 | + | |
| 4377 | + | |
| 4378 | + | |
| 4379 | + | |
| 4380 | + | |
| 4381 | + | |
| 4382 | + | |
| 4383 | + | |
| 4384 | + | |
| 4385 | + | |
| 4386 | + | |
| 4387 | + | |
| 4388 | + | |
| 4389 | + | |
| 4390 | + | |
| 4391 | + | |
| 4392 | + | |
| 4393 | + | |
| 4394 | + | |
| 4395 | + | |
| 4396 | + | |
| 4397 | + | |
4355 | 4398 | | |
4356 | 4399 | | |
4357 | 4400 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
6 | 7 | | |
7 | 8 | | |
8 | 9 | | |
| |||
76 | 77 | | |
77 | 78 | | |
78 | 79 | | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
79 | 84 | | |
80 | 85 | | |
81 | 86 | | |
| |||
291 | 296 | | |
292 | 297 | | |
293 | 298 | | |
294 | | - | |
| 299 | + | |
| 300 | + | |
295 | 301 | | |
296 | 302 | | |
297 | 303 | | |
| |||
2294 | 2300 | | |
2295 | 2301 | | |
2296 | 2302 | | |
| 2303 | + | |
| 2304 | + | |
| 2305 | + | |
| 2306 | + | |
| 2307 | + | |
| 2308 | + | |
| 2309 | + | |
| 2310 | + | |
| 2311 | + | |
| 2312 | + | |
| 2313 | + | |
| 2314 | + | |
| 2315 | + | |
| 2316 | + | |
| 2317 | + | |
| 2318 | + | |
| 2319 | + | |
| 2320 | + | |
| 2321 | + | |
| 2322 | + | |
| 2323 | + | |
| 2324 | + | |
| 2325 | + | |
| 2326 | + | |
2297 | 2327 | | |
2298 | 2328 | | |
2299 | 2329 | | |
| |||
4508 | 4538 | | |
4509 | 4539 | | |
4510 | 4540 | | |
| 4541 | + | |
4511 | 4542 | | |
4512 | | - | |
| 4543 | + | |
4513 | 4544 | | |
4514 | 4545 | | |
4515 | 4546 | | |
4516 | 4547 | | |
4517 | 4548 | | |
4518 | 4549 | | |
4519 | 4550 | | |
4520 | | - | |
4521 | 4551 | | |
4522 | 4552 | | |
4523 | 4553 | | |
| |||
4575 | 4605 | | |
4576 | 4606 | | |
4577 | 4607 | | |
4578 | | - | |
| 4608 | + | |
4579 | 4609 | | |
4580 | 4610 | | |
4581 | 4611 | | |
| |||
4645 | 4675 | | |
4646 | 4676 | | |
4647 | 4677 | | |
4648 | | - | |
| 4678 | + | |
4649 | 4679 | | |
4650 | 4680 | | |
4651 | 4681 | | |
| |||
4710 | 4740 | | |
4711 | 4741 | | |
4712 | 4742 | | |
4713 | | - | |
| 4743 | + | |
4714 | 4744 | | |
4715 | 4745 | | |
4716 | 4746 | | |
| |||
4781 | 4811 | | |
4782 | 4812 | | |
4783 | 4813 | | |
4784 | | - | |
| 4814 | + | |
4785 | 4815 | | |
4786 | 4816 | | |
4787 | 4817 | | |
| |||
4849 | 4879 | | |
4850 | 4880 | | |
4851 | 4881 | | |
4852 | | - | |
| 4882 | + | |
4853 | 4883 | | |
4854 | 4884 | | |
4855 | 4885 | | |
| |||
4891 | 4921 | | |
4892 | 4922 | | |
4893 | 4923 | | |
4894 | | - | |
| 4924 | + | |
4895 | 4925 | | |
4896 | 4926 | | |
4897 | 4927 | | |
| |||
4930 | 4960 | | |
4931 | 4961 | | |
4932 | 4962 | | |
4933 | | - | |
| 4963 | + | |
4934 | 4964 | | |
4935 | 4965 | | |
4936 | 4966 | | |
| |||
4966 | 4996 | | |
4967 | 4997 | | |
4968 | 4998 | | |
4969 | | - | |
| 4999 | + | |
4970 | 5000 | | |
4971 | 5001 | | |
4972 | 5002 | | |
| |||
5003 | 5033 | | |
5004 | 5034 | | |
5005 | 5035 | | |
5006 | | - | |
| 5036 | + | |
5007 | 5037 | | |
5008 | 5038 | | |
5009 | 5039 | | |
| |||
5039 | 5069 | | |
5040 | 5070 | | |
5041 | 5071 | | |
5042 | | - | |
| 5072 | + | |
5043 | 5073 | | |
5044 | 5074 | | |
5045 | 5075 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1870 | 1870 | | |
1871 | 1871 | | |
1872 | 1872 | | |
1873 | | - | |
1874 | | - | |
| 1873 | + | |
| 1874 | + | |
| 1875 | + | |
| 1876 | + | |
| 1877 | + | |
1875 | 1878 | | |
1876 | 1879 | | |
1877 | 1880 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
333 | 333 | | |
334 | 334 | | |
335 | 335 | | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
336 | 348 | | |
337 | 349 | | |
338 | 350 | | |
| |||
0 commit comments