Bug 1269468 - fix netmonitor copy POST Data by conditonal use of formDataSections; r=Honza draft
authorglowka <glowka.tom@gmail.com>
Fri, 09 Mar 2018 01:54:13 +0100
changeset 770504 5cd3f175501dd0e3239e6f689dada1da99f2a8a2
parent 770503 d4319ec6eeb2b417ed8d33c5b64fce31abf2b4ea
child 770505 e398cf76137bc5009ed1614a9cc97d0c4edfa67f
push id103418
push userbmo:glowka.tom@gmail.com
push dateWed, 21 Mar 2018 12:30:12 +0000
reviewersHonza
bugs1269468
milestone61.0a1
Bug 1269468 - fix netmonitor copy POST Data by conditonal use of formDataSections; r=Honza MozReview-Commit-ID: Kq45bHXoDB8
devtools/client/netmonitor/src/widgets/RequestListContextMenu.js
--- a/devtools/client/netmonitor/src/widgets/RequestListContextMenu.js
+++ b/devtools/client/netmonitor/src/widgets/RequestListContextMenu.js
@@ -266,23 +266,26 @@ class RequestListContextMenu {
   }
 
   /**
    * Copy the request form data parameters (or raw payload) from
    * the currently selected item.
    */
   async copyPostData(id, formDataSections, requestPostData) {
     let params = [];
-    // Try to extract any form data parameters.
-    formDataSections.forEach(section => {
-      let paramsArray = parseQueryString(section);
-      if (paramsArray) {
-        params = [...params, ...paramsArray];
-      }
-    });
+    // Try to extract any form data parameters if formDataSections is already
+    // available, which is only true if ParamsPanel has ever been mounted before.
+    if (formDataSections) {
+      formDataSections.forEach(section => {
+        let paramsArray = parseQueryString(section);
+        if (paramsArray) {
+          params = [...params, ...paramsArray];
+        }
+      });
+    }
 
     let string = params
       .map(param => param.name + (param.value ? "=" + param.value : ""))
       .join(Services.appinfo.OS === "WINNT" ? "\r\n" : "\n");
 
     // Fall back to raw payload.
     if (!string) {
       requestPostData = requestPostData ||