diff -r 5dc02b23752f -r 3e2da88830cd src/network/access/qnetworkaccesshttpbackend.cpp --- a/src/network/access/qnetworkaccesshttpbackend.cpp Tue Jul 06 15:10:48 2010 +0300 +++ b/src/network/access/qnetworkaccesshttpbackend.cpp Wed Aug 18 10:37:55 2010 +0300 @@ -944,10 +944,10 @@ checkForRedirect(status); - emit metaDataChanged(); - - // invoke this asynchronously, else Arora/QtDemoBrowser don't like cached downloads - // see task 250221 / 251801 + // This needs to be emitted in the event loop because it can be reached at + // the direct code path of qnam.get(...) before the user has a chance + // to connect any signals. + QMetaObject::invokeMethod(this, "metaDataChanged", Qt::QueuedConnection); qRegisterMetaType("QIODevice*"); QMetaObject::invokeMethod(this, "writeDownstreamData", Qt::QueuedConnection, Q_ARG(QIODevice*, contents));