Recently, I've setup a non-empty description on the Jenkins main page (context path /).
A click on the "edit description" button shows the previously entered description as expected. But with enabled auto-refresh mode the previously entered text is not shown (the preview textarea is empty).
To reproduce the faulty behavior:
- setup a non-empty description on the Jenkins main page (it does not matter if it contains HTML markup or not)
- disable auto-refresh: /jenkins/?auto_refresh=false
- click on "edit description" button: description should be properly displayed
- enable auto-refresh: /jenkins/?auto_refresh=true
- click the "edit description" button again: empty description is shown
Some analysis showed that the endpoint /jenkins/descriptionForm (to get the current description) is triggered only if auto-refresh is disabled. The HTTP POST on /jenkins/descriptionForm is issued in replaceDescription() in hudson-behavior.js. The function replaceDescription is triggered by a click event on the "edit description" button:
If auto-refresh is enabled, the onclick event binder on the is missing: