diff options
author | George Hazan <ghazan@miranda.im> | 2021-07-17 19:48:24 +0300 |
---|---|---|
committer | George Hazan <ghazan@miranda.im> | 2021-07-17 19:48:24 +0300 |
commit | 79aeffd07b1211308c5f80150837aff3523fe936 (patch) | |
tree | 00c1f0483128c1f3cb6c76477e0bb0293631b6f7 /src | |
parent | ec856b6883cc7e3dbf80b7e55981b1dfd30995e2 (diff) |
fixes #2934 (MRA: авторизация по логину-паролю больше не возможна)
Diffstat (limited to 'src')
-rw-r--r-- | src/mir_app/src/netlib_http.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/mir_app/src/netlib_http.cpp b/src/mir_app/src/netlib_http.cpp index 9db81ae182..da18e4bf53 100644 --- a/src/mir_app/src/netlib_http.cpp +++ b/src/mir_app/src/netlib_http.cpp @@ -929,6 +929,8 @@ char* gzip_decode(char *gzip_data, int *len_ptr, int window) do { output_data = (char*)mir_realloc(output_data, gzip_len+1); + if (output_data == nullptr) + break; zstr.next_in = (Bytef*)gzip_data; zstr.avail_in = *len_ptr; @@ -944,6 +946,8 @@ char* gzip_decode(char *gzip_data, int *len_ptr, int window) inflateEnd(&zstr); gzip_len *= 2; + if (gzip_len > 10000000) + break; } while (gzip_err == Z_BUF_ERROR); gzip_len = gzip_err == Z_STREAM_END ? zstr.total_out : -1; |