Properly handle `null` parameters in `Upload.appendFormData()`
authorMatthias Schmidt <gravatronics@live.com>
Tue, 5 Jan 2021 17:35:42 +0000 (18:35 +0100)
committerMatthias Schmidt <gravatronics@live.com>
Tue, 5 Jan 2021 17:35:42 +0000 (18:35 +0100)
wcfsetup/install/files/js/WoltLabSuite/Core/Upload.js
wcfsetup/install/files/ts/WoltLabSuite/Core/Upload.ts

index 5fb7bdcb3568fddd904484a7c25345cbc023926c..b97bf49df01fec7ae6475ec8cc965aa340f0c62c 100644 (file)
@@ -281,6 +281,9 @@ define(["require", "exports", "tslib", "./Ajax/Request", "./Core", "./Dom/Change
             }
             // recursively append additional parameters to form data
             function appendFormData(parameters, prefix) {
+                if (parameters === null) {
+                    return;
+                }
                 prefix = prefix || "";
                 Object.entries(parameters).forEach(([key, value]) => {
                     if (typeof value === "object") {
index 801f0a9374d3928c5d7f1482b4c871b520fb6e6a..c89015a677df20b9c0ad854a3d52dd22c34a3519 100644 (file)
@@ -349,7 +349,11 @@ abstract class Upload<TOptions extends UploadOptions = UploadOptions> {
     }
 
     // recursively append additional parameters to form data
-    function appendFormData(parameters: object, prefix?: string): void {
+    function appendFormData(parameters: object | null, prefix?: string): void {
+      if (parameters === null) {
+        return;
+      }
+
       prefix = prefix || "";
 
       Object.entries(parameters).forEach(([key, value]) => {