qt6-bb10/src/network
Marc Mutz 2596a8a55c QSharedNetworkSessionManager: clean up
Under no circumstance must Qt code define a non-public qHash()
overload of a public Qt type. If you can't provide a public qHash()
for the type, you can't use QHash. Period. This is because if we don't
provide a qHash() function, the user will have to provide one, and
then we have an ODR violation, iow: UB.

So, port away from QHash and qHash and use std::unordered_map, which
allows to pass a custom hash function - just what we needed.

Also fix other issues of the code:

- Use a function object as the deleter of the QSharedPointer, to allow
  inlining the function call.

- Avoid double lookup in case of a cache miss.

- Don't use direct initialization syntax for pointer variables. That's
  just ... weird.

Change-Id: Ica8bff728c1bd1cbb2fb43aa03a99bcb7ac2f7cc
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2019-05-28 21:53:17 +02:00
..
access Construct from an array instead of assigning just past a string's end 2019-05-28 14:46:18 +02:00
bearer QSharedNetworkSessionManager: clean up 2019-05-28 21:53:17 +02:00
doc QUdpSocket: Convert snippet to functor connect 2019-04-08 17:00:13 +00:00
kernel QNetworkStatusMonitor - make it always enabled on Darwin 2019-05-10 10:45:43 +00:00
socket QtNetwork: port away from Java-style iterators 2019-05-21 08:56:33 +02:00
ssl Use QtPrivate::QHashCombine in qHash(QSslError) 2019-05-27 17:38:43 +02:00
configure.json Merge remote-tracking branch 'origin/5.13' into dev 2019-03-26 08:24:59 +01:00
configure.pri configure: actually resolve libraries into full filepaths 2018-12-03 11:25:56 +00:00
network.pro Merge remote-tracking branch 'origin/5.10' into 5.11 2018-02-15 10:14:11 +01:00