summaryrefslogtreecommitdiffstats
path: root/src/corelib/io
Commit message (Collapse)AuthorAgeFilesLines
* add QProcess::InputChannelModeOswald Buddenhagen2013-09-055-10/+75
| | | | | | | | | | | this enables forwarding standard input from the parent process. Change-Id: I7ee72b9842acc96320d4da693b95dd15d9a7b4d4 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
* add QProcess::Forwarded{Output,Error}ChannelOswald Buddenhagen2013-09-054-6/+36
| | | | | | | Change-Id: Ifc5ed20c38f3228ef25c28681f296d0456b61abe Reviewed-by: Simon Hausmann <simon.hausmann@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* make the pipe setup code less convolutedOswald Buddenhagen2013-09-051-16/+21
| | | | | | | Change-Id: Ied870c892cc3dbbf24a3d9416f685e51a74e5c17 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
* never create a console for command line tools launched from gui appsOswald Buddenhagen2013-09-051-3/+6
| | | | | | | | | | | | | | | commit 219b0d217 fixed forwarding of stdio to a console. unfortunately, it also forced the creation of a console in the first place if there was none, which is not part of the contract. instead, give the child process a window (== console) only we we already have one. this can be done irrespective of our channel mode, which has the nice side effect that an explicit redirection to a console would now also work. Change-Id: Id25cab5da1ac1cc8ce452127ff95bac8d0a0fea8 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
* remove redundant conditionOswald Buddenhagen2013-09-051-3/+2
| | | | | | | ForwardedChannels implies that both stdoutReader and stderrReader are null. Change-Id: I9d5f02d3a1eac62316a6016b90c612d716ecaafc Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Remove qSort usage from QIODeviceGiuseppe D'Angelo2013-09-041-1/+3
| | | | | | | | QtAlgorithms is getting deprecated, see http://www.mail-archive.com/development@qt-project.org/msg01603.html Change-Id: If9fbcaf714f10659a3571f9e55ab913a85538038 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Get rid of qSort usages in QDirGiuseppe D'Angelo2013-09-041-2/+2
| | | | | | | | QtAlgorithms is getting deprecated, see http://www.mail-archive.com/development@qt-project.org/msg01603.html Change-Id: I951a2b9b16fce9d6d29cca0012cdeb06cad79fce Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* add QProcess::nullDevice()Oswald Buddenhagen2013-08-302-0/+29
| | | | | | Change-Id: I15273fa3f3ba323a835350153f2a20404f12420b Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QDateTime - Improve and expose Qt::OffsetFromUtcJohn Layt2013-08-282-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | The Qt::OffsetFromUtc TimeSpec was made public in Qt 4.4 but the access methods were never made public in the apidox effectively meaning the feature was never used. The implementation was also incomplete and inconsistent. This change cleans up the implementation and exports new public API for using the TimeSpec using new method names consistent with the new QTimeZone support. This change increases the QDataStream Version number for Qt 5.2 to 15. The behavior of one constructor has changed slightly to be consistent with the rest of the feature, but this behavior was never documented. [ChangeLog][QtCore][QDateTime] Fully implement support for Qt::TimeSpec of Qt::OffsetFromUTC, added new methods for offsetFromUTC(), toTimeSpec(), and toOffsetFromUTC(). Task-number: QTBUG-26161 Task-number: QTBUG-29666 Change-Id: If3cc7fc9778ca2b831644408ae749448d5975a3a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
* Fix name of configure flag in QSettings documentation.Christian Kandeler2013-08-231-1/+1
| | | | | | | It's "-sysconfdir", with one hyphen. Change-Id: I62ddece98ee23989ae8d1881feb375e30d872190 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* QUrl: Use decoded mode by default for individual getters/setters.David Faure2013-08-212-14/+14
| | | | | | | | | | | | | | | | | | | This fixes the wrong value for path() and fileName() when a path or file name actually contains a '%'. userInfo() and authority() are not individual getters, they combine two or more fields, so full decoding isn't possible (e.g. username containing a ':'). [ChangeLog][Important Behavior Changes][QUrl and QUrlQuery]QUrl now defaults to decoded mode in the getters and setters for userName, password, host, topLevelDomain, path and fileName. This means a '%' in one of those fields is now returned (or set) as '%' rather than "%25". In the unlikely case where the former behavior was expected, pass PrettyDecoded to the getter and TolerantMode to the setter. Change-Id: Iaeecbde9c269882e79f08b29ff8c661157c41743 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QUrl: fix host(FullyDecoded), it shouldn't trigger EncodeUnicode.David Faure2013-08-211-2/+5
| | | | | Change-Id: I9a62d5eb8b099b659cfcfc591c983b3d73ca9569 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-08-141-3/+3
|\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure mkspecs/macx-xcode/Info.plist.app mkspecs/macx-xcode/Info.plist.lib qmake/doc/qmake.qdocconf src/corelib/global/qglobal.h tests/auto/other/exceptionsafety/exceptionsafety.pro tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp Change-Id: I3c769a4a82dc2e99a12c69123fbf17613fd2ac2a
| * Fix crash in QProcess::waitForStarted() on Unix.Christian Strømme2013-08-131-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | Invoking waitForStarted() on a QProcess before or after an unsuccessful call to start() (e.g., with an empty command), would execute FD_SET with an invalid file descriptor and cause the process to abort. The bug can be reliably reproduced on OSX. Task-number: QTBUG-32958 Change-Id: Id25b7781168489281645e21571361ca1a71d43e3 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Add a Qt-API style QStandardPaths::setTestModeEnabledThiago Macieira2013-08-092-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QStandardPaths::enableTestMode has a verb in the imperative ("enable") as the core word in the name. That indicates an action. The function should not have had a parameter. Instead, add a Qt-style setXXXEnabled function. [ChangeLog][QtCore][QStandardPaths] QStandardPaths::enableTestMode is deprecated and is replaced by QStandardPaths::setTestModeEnabled. Change-Id: Ib26ad72d7c635890d2cb22ae9d44cbda08a6f17c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: David Faure (KDE) <faure@kde.org>
* | QUrl: do not decode "#" in fragmentsThiago Macieira2013-08-041-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For some time, we've assumed that the URL specification had a mistake in that it didn't allow the "#" character to appear decoded in the fragment. We've gotten away with it so far. However, turns out that the CoreFoundation NSURL class doesn't like it. So we have to be stricter. [ChangeLog][Important Behavior Changes][QUrl and QUrlQuery] QUrl no longer decodes %23 found in the fragment to "#" in the output of toString(QUrl::FullyEncoded) or toEncoded() Task-number: QTBUG-31945 Change-Id: If5e0fb37bae84710986c9ca89bd69ec98437cd63 Reviewed-by: David Faure (KDE) <faure@kde.org>
* | Make sure that QUrl::FullyDecoded mode uses U+FFFD for bad UTF-8Thiago Macieira2013-08-041-0/+23
| | | | | | | | | | | | | | | | It's a good practice to always replace bad UTF-8 sequences with the replacement character. It could be considered a security issue too. Change-Id: I9e7d72e4c4102cdb8334449b5e7f882228a9048f Reviewed-by: David Faure (KDE) <faure@kde.org>
* | Remove fully-decoded QUrl user info and authority sectionsThiago Macieira2013-08-041-28/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Those sections contain more than one components of a URL, separated by delimiters. For that reason, QUrl::FullyDecoded and QUrl::DecodedMode do not make sense, since they would cause the returned value to be ambiguous and/or fail to parse again. In fact, there was a comment in the test saying "look how it becomes ambiguous". Those modes are already forbidden in the setters and getters of the full URL (setUrl(), url(), toString() and toEncoded()). [ChangeLog][Important Behavior Changes][QUrl and QUrlQuery] QUrl no longer supports QUrl::FullyDecoded mode in authority() and userInfo(), nor QUrl::DecodedMode in setAuthority() and setUserInfo(). Change-Id: I538f7981a9f5a09f07d3879d31ccf6f0c8bfd940 Reviewed-by: David Faure (KDE) <faure@kde.org>
* | QUrl: remove temporary codeThiago Macieira2013-08-041-3/+0
| | | | | | | | | | | | | | | | | | The setting of EncodeDelimiters was temporary until we could remove the old qt_urlRecode "decode all" mode (not the FullyDecoded mode, that stays). Change-Id: Ic07ebe4bb7fc72351b65bfb4619b71206cc8c0cd Reviewed-by: David Faure (KDE) <faure@kde.org>
* | Doc: update the QUrl and QUrlQuery documentationThiago Macieira2013-08-042-28/+102
| | | | | | | | | | | | | | | | Just minor fixes and changes in wording, to support the new understanding of the percent-encoded characters. Change-Id: I77ec10e41f32292d705e4aa8197b9ddce5bef6d2 Reviewed-by: David Faure (KDE) <faure@kde.org>
* | QUrlQuery: update our understanding of delimitersThiago Macieira2013-08-042-35/+27
| | | | | | | | | | | | | | | | | | | | | | | | This commit is similar to the previous commit that changed the behavior of QUrl, but now to QUrlQuery. We can now remove a section of qt_urlDecode, which is no longer used: there's no "decode everything" mode anymore. Task-number: QTBUG-31660 Change-Id: I66cfbfd290eeba5b04688cd5ffd615dd57cc6309 Reviewed-by: David Faure (KDE) <faure@kde.org>
* | QUrl: update our understanding of the encoding of delimitersThiago Macieira2013-08-042-249/+160
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The longer explanation can be found in the comment in qurl.cpp. The short version is as follows: Up to now, we considered that every character could be replaced with its percent-encoding equivalent and vice-versa, so long as the parsing of the URL did not change. For example, x:/path+path and x:/path%2Bpath were the same. However, to do this and yet be compliant with most URL uses in the real world, we had to add exceptions: - "/" and "%2F" were not the same in the path, despite the delimiter being behind (rationale was the complex definition of path) - "+" and "%2B" were not the same in the query, so we ended up not transforming any sub-delim in the query at all Now, we change our understanding based on the following line from RFC 3986 section 2.2: URIs that differ in the replacement of a reserved character with its corresponding percent-encoded octet are not equivalent. From now on, QUrl will not replace any sub-delim or gen-delim ("reserved character"), except where such a character could not exist in the first place. This simplifies the code and removes all exceptions. As a side-effect, this has also changed the behaviour of the "{" and "}" characters, which we previously allowed to remain decoded. [ChangeLog][Important Behavior Changes][QUrl and QUrlQuery] QUrl no longer considers all delimiter characters equivalent to their percent-encoded forms. Now, both classes always keep all delimiters exactly as they were in the original URL text. [ChangeLog][Important Behavior Changes][QUrl and QUrlQuery] QUrl no longer decodes %7B and %7D to "{" and "}" in the output of toString() Task-number: QTBUG-31660 Change-Id: Iba0b5b31b269635ac2d0adb2bb0dfb74c139e08c Reviewed-by: David Faure (KDE) <faure@kde.org>
* | QUrl: add matches(url, options) method.David Faure2013-07-262-0/+71
| | | | | | | | | | Change-Id: I534f494aecc48cc2accfcfcb692f35046250b493 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Sergio Ahumada2013-07-244-27/+53
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-07-234-27/+53
| |\| | | | | | | | | | | | | | | | | | | Conflicts: tests/auto/dbus/qdbusabstractinterface/tst_qdbusabstractinterface.cpp Change-Id: I18a9d83fc14f4a9afdb1e40523ec51e3fa1d7754
| | * document that validity of exitCode() depends on exitStatus() == NormalExitOswald Buddenhagen2013-07-221-3/+7
| | | | | | | | | | | | | | | Change-Id: Ied16681f08c59de16ac365b9ae76c2eacf6bc29c Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
| | * Fix incomplete override of QIODevice::open in QProcess and QLocalSocketThiago Macieira2013-07-202-22/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The rule for a new override is that it must still work if the old implementation is called. The catch is that any class that derives from QProcess and isn't recompiled will still have QIODevice::open in its virtual table. That is equivalent to overriding open() and calling QIODevice::open() (like the tests). In Qt 5.0, QProcess::start() called QIODevice::open directly, not the virtual open(), so there's no expectation that a user-overridden open() be called. With that in mind, simply fix QProcess::start to not call the virtual open at all. Similarly with QLocalSocket, the calls to open were always non-virtual. Task-number: QTBUG-32284 Change-Id: I88925f0ba08bc23c849658b54582744997e69a4c Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
| | * fix endless loop in QProcess/Win drainOutputPipesJoerg Bornemann2013-07-181-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 568f82fba397e06a26b4fd40f074e4432d02d248 was incomplete. If drainOutputPipes detected some readyRead it wouldn't end the loop. Task-number: QTBUG-32354 Change-Id: I4e594f1e148abe9ef36c047a55eee1b22fd5064b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| | * Fix compilation of QLockFile on SolarisDavid Faure2013-07-161-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | flock isn't available but we use fcnlt already (which is the recommended alternative on Solaris) Change-Id: I718e59c4804950a26eeb610888e17ce666522dcc Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | BlackBerry: Rearmed socket notifiers after selectBernd Weimer2013-07-241-4/+51
|/ / | | | | | | | | | | | | | | | | | | | | Socket notifiers that are registered with BPS are disabled by a call to select. This solves the echoTest2 test case of QProcess. Change-Id: Ic7f3f14433477b89eaad5ffbeb6c22a1b5c2e910 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | QUrl: let StripTrailingSlash remove multiple trailing slashesDavid Faure2013-07-201-2/+4
| | | | | | | | | | Change-Id: Ic4c8f70bb729630d9110ed6766dd9e40f9ab4d80 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QUrl: add fileName() method. Complements QUrl::RemoveFilename.David Faure2013-07-202-0/+31
| | | | | | | | | | Change-Id: Ieda43364214c3b7aee43040e176e29ad48c14271 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Make QUrl store the first bad IPv6 character in the error stringThiago Macieira2013-07-201-11/+22
| | | | | | | | | | Change-Id: I9a0a521ff5c3188ba6f862e2b91369cb61787359 Reviewed-by: David Faure (KDE) <faure@kde.org>
* | Make QIPAddress::parseIp6 return the first bad characterThiago Macieira2013-07-203-26/+39
| | | | | | | | | | | | | | In case of undetermined error, returns end. Change-Id: Ic5d16bab5fc56ad24f19da25f73f9b844ce11d3f Reviewed-by: David Faure (KDE) <faure@kde.org>
* | QUrl: Make sure we don't return a dangling pointer from parseIpFutureThiago Macieira2013-07-201-2/+3
| | | | | | | | | | Change-Id: I54bf8d0fe72b8db8d158899ee4525c8d067272b8 Reviewed-by: David Faure (KDE) <faure@kde.org>
* | QUrl: Uppercase the version number in IPvFutureThiago Macieira2013-07-201-0/+4
| | | | | | | | | | | | | | | | | | We don't know what it might be used for. The RFC for URI says it's an HEXDIG, and since we uppercase all other HEXDIGs already (in percent-encodings...). Change-Id: I56d0a81315576dd98eaa2657c0307d79332543a5 Reviewed-by: David Faure (KDE) <faure@kde.org>
* | Make the URL Recode function to fix bad input in FullyDecoded mode tooThiago Macieira2013-07-201-3/+10
| | | | | | | | | | | | | | | | | | | | | | | | So far, this function hasn't been used for input coming in from the user, so it wasn't necessary. But we may want to do it, or we may already be doing it accidentally somewhere that isn't triggering the failed assertions during unit testing. So let's be on the safe side and allow it. And test it too. Change-Id: Ib63addd8da468ad6908278d07a4829f1bdc26a07 Reviewed-by: David Faure (KDE) <faure@kde.org>
* | Fix IPvFuture use in QUrlThiago Macieira2013-07-201-5/+6
| | | | | | | | | | | | | | | | | | We have no idea what it might contain, but test it anyway to make sure it works. Turns out there were a few bugs the unit tests have now caught. Change-Id: I0a6c868365feec31c2360b3c341c8ca6944f4352 Reviewed-by: David Faure (KDE) <faure@kde.org>
* | Fix QUrl parsing of IPv6 hosts with encoded colonsThiago Macieira2013-07-201-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | Registered names and IP addresses can only contain unreserved characters (letters, digits, dots, hyphens, underscores) and the colon, which is a gen-delim. For registered names and IPv4 addresses, we can simply use the default config -- if anything that remains percent-encoded, it means it's not a valid hostname anyway. For IPv6, we just need to decode the colon. Change-Id: If8083d47f6e5375f760e7a6c59631c89e4da8378 Reviewed-by: David Faure (KDE) <faure@kde.org>
* | QUrl: Add an "appendingTo" parameter to QUrl::appendFragmentThiago Macieira2013-07-201-4/+4
| | | | | | | | | | | | | | | | Will be needed in a future commit. Change-Id: Ia5f384442d25d277e7582a20d1c37da4303c64c3 Reviewed-by: David Faure (KDE) <faure@kde.org> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* | QUrl: remove old commented out code for normalized().David Faure2013-07-131-81/+0
| | | | | | | | | | | | | | adjusted(NormalizePathSegments) does this. Change-Id: I4b17c39174b5c04edac8d51e5fef8cd052db4b3f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QUrl: add NormalizePathSegments to UrlFormattingOptionsDavid Faure2013-07-133-23/+45
| | | | | | | | | | | | | | | | | | This is a bit like QDir::cleanPath(), but for URL paths. The code is shared with QDir::cleanPath(), by extracting the common parts it into a helper, qt_normalizePathSegments(). Change-Id: I7133c5e4aa2bf17fba98af13eb5371afba64197a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Merge branch 'stable' into devSergio Ahumada2013-07-116-31/+93
|\| | | | | | | | | | | | | | | | | | | Conflicts: qmake/generators/mac/pbuilder_pbx.cpp src/corelib/json/qjsonwriter.cpp src/corelib/kernel/qeventdispatcher_blackberry.cpp src/plugins/platforms/cocoa/qcocoacolordialoghelper.mm Change-Id: I24df576c4cbd18fa51b03122f71e32bb83b9028f
| * QDir::mkpath shouldn't fail if parent directory denies accessShawn Rutledge2013-07-111-1/+2
| | | | | | | | | | | | | | | | | | | | | | The fix for QTBUG-30046 introduced this regression on Windows, which meant that it became impossible to create a directory anywhere under c:\Users for example, because each user only has permission to see his own directory. Task-number: QTBUG-32314 Change-Id: I1b35433265934d4978d4b0c23a946c3f920c710d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * fix infinite loop in QProcessPrivate::drainOutputPipesJoerg Bornemann2013-07-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When drainOutputPipes is called, the process is already dead. If readyReadEmitted is false, there was no data in the pipes. As the process is dead, there won't be data in the pipes in future iterations. The situation that triggered the infinite loop was this: process A starts console process B. B starts console process C. C inherits stdout/err of B. B dies. C runs forever and does not close the stdout/err handles. A notices that B died and calls drainOutputPipes. Task-number: QTBUG-29391 Change-Id: I4819901df307be684c6ad70753a5f964a834704a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| * QWinOverlappedIoNotifier: fix race conditionJoerg Bornemann2013-07-051-5/+38
| | | | | | | | | | | | | | | | | | | | | | | | Fix race condition in waitForNotified for zero timeout. A waitForNotified(0) call is typically used for triggering events near the end of life of the I/O resource (e.g. drainOutputPipes in QProcess). In that case we must synchronize the IOCP thread and waitForNotified. Task-number: QTBUG-29391 Change-Id: Iadbd8564ec461cbc48a6ef8c5627e30a5c6eecfd Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| * bail out early in QWinOverlappedIoNotifier::waitForNotifiedJoerg Bornemann2013-07-051-0/+7
| | | | | | | | | | | | | | | | Calling waitForNotified on an uninitialized notifier will print a warning and return false. The autotest has been adjusted. Change-Id: I85e18d6d0a8a5462e1a5d451613add941d89b5fb Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| * Use case insensitive matching for hashes QFileSystemWatcher/Win.Friedemann Kleint2013-07-042-23/+40
| | | | | | | | | | | | | | | | | | | | | | Do not lower case file names to generate hash keys since QString::toLower() converts some characters with context which the Windows file system will not. Task-number: QTBUG-31341 Change-Id: I285bfedef3c1ca9d59083229e61974dd378c72ae Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
| * Remove default argument from declarations of qHash as friendGiuseppe D'Angelo2013-07-021-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's illegal in C++11: §8.3.6.4 [dcl.fct.default] "If a friend declaration specifies a default argument expression, that declaration shall be a definition and shall be the only declaration of the function or function template in the translation unit." Clang is starting to enforce this, thus it's making qtbase not compiling. Task-number: QTBUG-32100 Change-Id: Ifd9d4f62354d7cf4ccf275f36aab64e05c59efff Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com> Reviewed-by: Mitch Curtis <mitch.curtis@digia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | QUrl: add RemoveFilename to UrlFormattingOptions.David Faure2013-07-082-2/+12
| | | | | | | | | | | | | | | | This allows to find the parent directory url using url.adjusted(QUrl::RemoveFilename). Change-Id: I1ca433ac67e4f93080de54a9b7ab2e538509ed04 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>