← Back to team overview

touch-packages team mailing list archive

[Bug 1470700] Re: QNetworkAccessManager hangs when in flight mode

 

OK, I installed the PPA and built a thumbnailer that reverts the work-
around we've been using. I print trace for the networkAccessible() and
we unconditionally send a GET request, regardless of what
networkAccessible() tells us.

I start out with flight mode enabled. networkAccessible() returns the
correct value (0), and the GET request fails immediately with the
correct error status.

I then disable flight mode. networkAccessible() now returns 1 as it
should. However, the GET request has a problem. It doesn't return and we
time it out after 10 seconds.

So, it looks like the networkAccessible() problem is fixed. However, the
GET doesn't seem to realize when the status has changed from "down" to
"up" and doesn't send the request as it should.

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to qtbase-opensource-src in
Ubuntu.
https://bugs.launchpad.net/bugs/1470700

Title:
  QNetworkAccessManager hangs when in flight mode

Status in qtbase-opensource-src package in Ubuntu:
  Confirmed
Status in thumbnailer package in Ubuntu:
  Triaged

Bug description:
  Testing the fix:

  - Update rc-proposed (vivid) to citrain device-upgrade 32 0000
  - Edit /etc/environment on the phone and add a line to keep the current default behavior (this will be added to the silo via ubuntu-touch-session if it's planned to be landed):
    QT_EXCLUDE_GENERIC_BEARER=1
  - Reboot

  ---

  When my phone is in flight mode, HTTP requests made using
  QNetworkAccessManager seem to hang rather than erroring out
  immediately.

  From my tests, it looks like the HTTP request is blocked until the
  flight mode is disabled and a network connection is reestablished.
  This is contrary to the documentation, which states:

  """If the network is not accessible the network access manager will
  not process any new network requests, all such requests will fail with
  an error. Requests with URLs with the file:// scheme will still be
  processed."""

  http://doc.qt.io/qt-5/qnetworkaccessmanager.html#networkAccessible-
  prop

  By running strace on my test program, it doesn't even look like it
  attempts to open a TCP connection when blocked in flight mode.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/qtbase-opensource-src/+bug/1470700/+subscriptions


References