99e615846246a19fdb5d01fcea5dce49179dd2ba braney Tue Sep 22 10:52:28 2026 -0700 htmlPage: parse valueless tag attributes such as SELECTED The attribute name scanner read everything up to the next equals sign, so <OPTION SELECTED value='any'> became a single attribute named "SELECTED value". A lookup for SELECTED then found nothing and the SELECT fell back to its first option. The same happened to CHECKED on a checkbox, and to the src in <script async src=...>. A name now ends at white space as well, with a look-ahead so that spaces around the equals sign still work. This is what put 21 soft errors in every hgNearTest robot run since v495. refs #38413 diff --git src/lib/tests/expected/valuelessAttrs.out src/lib/tests/expected/valuelessAttrs.out new file mode 100644 index 00000000000..5b65a9a2659 --- /dev/null +++ src/lib/tests/expected/valuelessAttrs.out @@ -0,0 +1,15 @@ +mainForm GET /cgi-bin/hgNear + logicFirst SELECT n/a any + all + any + logicLast SELECT n/a any + all + any + logicNoValue SELECT n/a any + all + any + spaced INPUT TEXT spacedValue + boxFirst INPUT CHECKBOX on + boxLast INPUT CHECKBOX on + disabledText INPUT TEXT stillNamed + Submit INPUT SUBMIT n/a