mirror of
https://github.com/zotero/zotero.git
synced 2026-09-19 00:01:31 +00:00
`nsIWebProgressListener.onStateChange()` gets called twice at the end of requests, once with `stateFlags` set to `327696` and once with it set to `262160`, which corresponds to `STATE_STOP + STATE_IS_NETWORK + STATE_IS_REQUEST` and `STATE_STOP + STATE_IS_NETWORK`. httpd.js debug logging shows that the connection is closed between the two calls. In WebProgressFinishListener, we were previously calling `onFinish` after the first one, but in Zotero 7, at least on Linux (or maybe just on slower machines due to a race condition), the file from `saveURI()` doesn't appear to be reliably written after the first call, causing `Attachments.downloadFile()` to fail in `_enforcePDF()` due to an empty file. This changes WebProgressFinishListener to wait until the second `STATE_STOP` call. We'll have to confirm whether this is the state-change pattern for all requests, but it fixes our Find Available PDF tests in CI. |
||
|---|---|---|
| .. | ||
| content | ||
| locale | ||
| skin/default | ||