mirror of
https://git.jabber.space/devs/cproof.git
synced 2026-07-19 18:46:21 +00:00
Fix unable to download item twice
## Summary Partial fix for https://github.com/profanity-im/profanity/issues/1939 > When doing the same in an unencrypted (no e2ee) chat there is no Downloading… message at all but the file is downloaded. Download a file twice with `/url save`, the second download will not print download progress to the window. The cause is `HTTPDownload`'s `silent` variable is not initialized; so, `silent` points to a second-hand stack memory address with old data. `silent` references data, so the `if` statement will fail in **src/tools/http_download.c:206** and download progress will not print to the window. The fix is to initialize `silent` in both encrypted and unencrypted file download scenarios. ## Testing Valgrind: Yes - `/url save` without OMEMO **SUCCESS**: Try three times with the same URL and download status will display every time. - `/url save` with OMEMO **SUCCESS**: Try three times with the same URL and download status will display every time. - `/plugins install https://raw.githubusercontent.com/profanity-im/profanity-plugins/master/stable/sounds.py` **SUCCESS**: Try once and download progress is hidden.
This commit is contained in:
@@ -110,6 +110,7 @@ aesgcm_file_get(void* userdata)
|
||||
http_dl->url = strdup(https_url);
|
||||
http_dl->filename = strdup(tmpname);
|
||||
http_dl->cmd_template = NULL;
|
||||
http_dl->silent = FALSE;
|
||||
aesgcm_dl->http_dl = http_dl;
|
||||
|
||||
http_file_get(http_dl); // TODO(wstrm): Verify result.
|
||||
|
||||
Reference in New Issue
Block a user