Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-75489

QNetworkReplyWasmImpl::abort() caused further dataReceived crash

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P2: Important
    • None
    • 5.13.0 Beta2
    • Network
    • None
    • WebAssembly
    • 762d4afdc17f96804a83391551fcc7cad26a9319

    Description

      I have been trying to use Mapbox map plugin in a WebAssembly QML app. Everything went fine about building the qtlocation module by eliminating Nokia map plugin which depends on threading.

      Anyway, the actual application started to crash while panning and zooming quickly. I realized that commenting out QGeoTileFetcher::cancelTileRequests from QGeoTileFetcher::updateTileRequests resolved the problem.

      After deeper investigation, I realized that calling QNetworkReplyWasmImpl::abort() causes the problem. But the exception happens in QNetworkReplyWasmImplPrivate::dataReceived.

      It seems that this function is called even the reply is aborted previously.

      Actually, this method is being called by q_readBinary. So, adding this line, resolved the problem. but I'm not sure if it is a good workaround.

      Q_ASSERT(reply); 
      //MY WORKAROUND
      if (reply->isFinished) 
          return;
      //////////
      
      

       

       

      Attachments

        For Gerrit Dashboard: QTBUG-75489
        # Subject Branch Project Status CR V

        Activity

          People

            lpotter Lorn Potter
            soheilarmin Soheil Armin
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes