<html>
    <head>
      <base href="https://bugs.webkit.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - NetworkSession: downloads started by startDownload() can fail before starting from the API point of view"
   href="https://bugs.webkit.org/show_bug.cgi?id=163107">163107</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>NetworkSession: downloads started by startDownload() can fail before starting from the API point of view
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>WebKit
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>WebKit Local Build
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>Unspecified
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Unspecified
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>Normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P2
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>WebKit2
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>webkit-unassigned&#64;lists.webkit.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>cgarcia&#64;igalia.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>achristensen&#64;apple.com, beidson&#64;apple.com
          </td>
        </tr></table>
      <p>
        <div>
        <pre>In the network process we use a PendingDownload in this case, but in the UI process we always have a single download proxy. If an error happens before the pending download is converted inot a real download, the DidFail messages is received in the download proxy before the DidStart one. This is problematic at least for the GTK+ API, because it's common to connect to the started signal and connect to all other signals from there, but in this case the started signal is never emitted, and then the failed one is not handled. This is not a problem for downloads started by convertTaskToDownload, because in that case those loads are not considered a download by the UI process when those early errors happen, and then the web page handles them.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>