aboutsummaryrefslogtreecommitdiff
path: root/www/freenginx-devel/files/extra-patch-ngx_http_upload_module.c
diff options
context:
space:
mode:
Diffstat (limited to 'www/freenginx-devel/files/extra-patch-ngx_http_upload_module.c')
-rw-r--r--www/freenginx-devel/files/extra-patch-ngx_http_upload_module.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/www/freenginx-devel/files/extra-patch-ngx_http_upload_module.c b/www/freenginx-devel/files/extra-patch-ngx_http_upload_module.c
new file mode 100644
index 000000000000..36649990a8f0
--- /dev/null
+++ b/www/freenginx-devel/files/extra-patch-ngx_http_upload_module.c
@@ -0,0 +1,26 @@
+--- ../nginx-upload-module-96e6460/ngx_http_upload_module.c.orig 2025-11-02 20:25:39.277074000 -0500
++++ ../nginx-upload-module-96e6460/ngx_http_upload_module.c 2025-11-02 20:31:22.912698000 -0500
+@@ -989,7 +989,11 @@
+ if (u->limit_rate) {
+ remaining = ((ssize_t) r->headers_in.content_length_n) - u->received;
+ next_buf_size = (buf_read_size > remaining) ? remaining : buf_read_size;
++#if defined freenginx && nginx_version >= 1029000
++ limit = u->limit_rate * (ngx_time() - ((ngx_current_msec - r->start_time) / 1000) + 1) - (u->received + next_buf_size);
++#else
+ limit = u->limit_rate * (ngx_time() - r->start_sec + 1) - (u->received + next_buf_size);
++#endif
+ if (limit < 0) {
+ rev->delayed = 1;
+ ngx_add_timer(rev, (ngx_msec_t) ((limit * -1000 / u->limit_rate) + 1));
+@@ -3370,7 +3373,11 @@
+ }
+
+ if (u->limit_rate) {
++#if defined freenginx && nginx_version >= 1029000
++ limit = u->limit_rate * (ngx_time() - ((ngx_current_msec - r->start_time) / 1000) + 1) - u->received;
++#else
+ limit = u->limit_rate * (ngx_time() - r->start_sec + 1) - u->received;
++#endif
+
+ if (limit < 0) {
+ c->read->delayed = 1;