Many issues, mostly in headers, were not addressed in
e38410b76c
modernize-use-auto
modernize-use-nullptr
modernize-use-override
modernize-use-using
modernize-use-default-member-init
modernize-use-equals-default
Change-Id: I320a51726db881e582b898948d53735ebb06887a
Reviewed-by: hjk <hjk@qt.io>
Make runBlocking handle the case where the process starts up too fast
for waitForStarted.
Change-Id: Id8f3522c7c23bc8d7cdbbc94da6fa6c0b8e45454
Reviewed-by: David Schulz <david.schulz@qt.io>
It is not an impossible condition that a process keeps hanging.
Change-Id: I87cfdb72ff8528c71b2add09e41bdf742cdfc8b6
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This overload of error is deprecated in 5.6.
Replace with errorOccurred, which was introduced in 5.6.
Change-Id: Iccfba7e7103b7ce377471696f1f2ec217e52c840
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* Do not reserve QString before replacing it with another
* Do not append \n when there's only stdout
Change-Id: If75eade473949437a4b5fea2ac0153fa2853b3c8
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Do pass on the character that caused the line split in the signal from
SynchronousProcess. That way the UI can handle '\r' properly, leading
to a nicer git output.
Task-number: QTCREATORBUG-16611
Change-Id: I1d73ec9061689267dfffd776f32ab9c10108d10e
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
Only convert the raw output later in a stdOut() and stdErr() method of
the SynchronousProcessResponse.
This is necessary since we have processes that use different encodings
for different sections of the file (I am looking at you, git).
Also remove the signals for raw data on stdout/stderr, leaving only the
signals returning buffered QString lines. This should be safe, even
with UTF-16 output.
Change-Id: Ida613fa86d1468cbd33bc6b3a1506a849c2d1c0a
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* result is initialized to StartFailed, so after executing, we should
always set the result, unless previously set to Hang.
If the process really fails to start, we return earlier.
* Setting m_maxHangTimerCount to INT_MAX is bad, since it is later
multiplied by 1000 (the original value is in seconds), but still
remains an int, so we get -1000...
Change-Id: Ie990105894fe223a93ece29df4574592a122f94b
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
waitForFinish returns false if the process is no longer running at
the time of the call. Handle that throughout the codebase.
Change-Id: Ia7194095454e82efbd4eb88f2d55926bdd09e094
Reviewed-by: hjk <hjk@theqtcompany.com>
* Reorder members to avoid padding
* Use C++11 member initialization
Change-Id: Ib04c2d59dfcf54f5df7afddc6e21197f1095e829
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
Makes much more sense than plain 0.
Fixes Git interactive rebase that should have no timeout.
Change-Id: I48b4d4dc35c8e5ed13e074d431d05d6795eb8797
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
Qt 5.3 is the minimum requirement these days. Remove all fallback code
from sources and project files.
Change-Id: If6188a471197acadda4d6baee71804ba1a8026c6
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
This patch fixes ~1100 warnings from qdoc
Change-Id: Ia9555db675acbf8083b2f87d9855a62a3a34ccb9
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
* Introduce a proxy class for thread synchronization
* Use signals for appending text to output window
Change-Id: Iecbb010e6b6e9dab27d9862a43dafa450f2bb1f8
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
This is basically a generalization of HostOsInfo for
a system that might not be the host system. HostOsInfo
is now implemented in terms of the new class.
Prospective use case: Untie Utils::Environment from
the host system.
Change-Id: If333b96674652109fcb0ad79f75aaaf5e86e17e3
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
Matching \n in a QByteArray is wrong. For example, it detects Ċ (U+010A)
and ਛ (U+0A1B) as end-of-line
Change-Id: I9c03d0b19da3d328e706ff2c89f09713be870f34
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Replaces \r\n? with \n.
Some console applications (e.g. git-push, git-rebase) use \r alone to
move the cursor to the line's beginning. This should be replaced by \n
rather than just be erased.
Change-Id: I8d614d2b471e59decdbfa7f173ffa7fbdb11759b
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
QDoc does some magic with the \class and \namespaces
and \brief commands, so the following wording must be used:
"The xxx class yyy ..."
Change-Id: Id231f30e8464898b776888d5423523de404aae34
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Forward-declare QGraphicsOpacityEffect in DetailsButton,
QProcessEnvironment in Environment, QFileInfo in fileutils,
QUrl in IWelcomePage, FancyLineEdit in PathChooser and
remove unneeded headers.
Change-Id: I7d5f273530dd2059bbdaf0899f0a3bc7e49e8482
Reviewed-by: hjk <hjk121@nokiamail.com>
Happens if the process is already terminated
Change-Id: I660779dc701d1fe8b41562f68f0ce95c6e87058f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
#!/usr/bin/env ruby
Dir.glob('**/*.cpp') { |file|
# skip ast (excluding paste, astpath, and canv'ast'imer)
next if file =~ /ast[^eip]|keywords\.|qualifiers|preprocessor|names.cpp/i
s = File.read(file)
next if s.include?('qlalr')
orig = s.dup
s.gsub!(/\n *if [^\n]*{\n[^\n]*\n\s+}(\s+else if [^\n]* {\n[^\n]*\n\s+})*(\s+else {\n[^\n]*\n\s+})?\n/m) { |m|
res = $&
if res =~ /^\s*(\/\/|[A-Z_]{3,})/ # C++ comment or macro (Q_UNUSED, SDEBUG), do not touch braces
res
else
res.gsub!('} else', 'else')
res.gsub!(/\n +} *\n/m, "\n")
res.gsub(/ *{$/, '')
end
}
s.gsub!(/ *$/, '')
File.open(file, 'wb').write(s) if s != orig
}
Change-Id: I3b30ee60df0986f66c02132c65fc38a3fbb6bbdc
Reviewed-by: hjk <qthjk@ovi.com>
Avoid using "." as includePath when it is unneeded
Change-Id: I9bc6f4ebe50409f49782520033fd5f098aed10d0
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>