aboutsummaryrefslogtreecommitdiffstats
path: root/Plugins/DbAndroid/adbmanager.cpp
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@ubuntu.com>2016-06-13 18:42:57 -0400
committerLibravatarUnit 193 <unit193@ubuntu.com>2016-06-13 18:42:57 -0400
commit65d5f68cc6dc81799c5a5d90400a2c1f0dd02547 (patch)
tree6f245ba901b87ef42fed69965aea22f5eea6b590 /Plugins/DbAndroid/adbmanager.cpp
parentaeb6bad01630d325a4e768e798a7a6d44e18fdaf (diff)
parent5d9314f134ddd3dc4c853e398ac90ba247fb2e4f (diff)
Merge tag 'upstream/3.1.0'
Upstream version 3.1.0 # gpg: Signature made Mon 13 Jun 2016 06:42:54 PM EDT using RSA key ID EBE9BD91 # gpg: Good signature from "Unit 193 <unit193@gmail.com>" # gpg: aka "Unit 193 <unit193@ninthfloor.org>" # gpg: aka "Unit 193 <unit193@ubuntu.com>" # gpg: aka "Unit 193 <unit193@ninthfloor.com>"
Diffstat (limited to 'Plugins/DbAndroid/adbmanager.cpp')
-rw-r--r--Plugins/DbAndroid/adbmanager.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/Plugins/DbAndroid/adbmanager.cpp b/Plugins/DbAndroid/adbmanager.cpp
index ed012a1..462e91f 100644
--- a/Plugins/DbAndroid/adbmanager.cpp
+++ b/Plugins/DbAndroid/adbmanager.cpp
@@ -175,13 +175,13 @@ bool AdbManager::testAdb(const QString& adbPath, bool quiet)
return res;
}
-bool AdbManager::execBytes(const QStringList& arguments, QByteArray* stdOut, QByteArray* stdErr)
+bool AdbManager::execBytes(const QStringList& arguments, QByteArray* stdOut, QByteArray* stdErr, bool forceSafe)
{
if (!ensureAdbRunning())
return false;
QProcess proc;
- if (arguments.join(" ").size() > 800)
+ if (forceSafe || arguments.join(" ").size() > 800)
{
if (!execLongCommand(arguments, proc, stdErr))
return false;
@@ -250,11 +250,11 @@ bool AdbManager::ensureAdbRunning()
return true;
}
-bool AdbManager::exec(const QStringList& arguments, QString* stdOut, QString* stdErr)
+bool AdbManager::exec(const QStringList& arguments, QString* stdOut, QString* stdErr, bool forceSafe)
{
QByteArray* out = stdOut ? new QByteArray() : nullptr;
QByteArray* err = stdErr ? new QByteArray() : nullptr;
- bool res = execBytes(arguments, out, err);
+ bool res = execBytes(arguments, out, err, forceSafe);
if (stdOut)
{
@@ -292,14 +292,14 @@ bool AdbManager::execLongCommand(const QStringList& arguments, QProcess& proc, Q
args.removeFirst(); // remove the shell itself
// Escape remaining arguments for the script
- QString cmd = " '" + args.replaceInStrings("'", "'\''").join("' '") + "'";
+ QString cmd = " '" + args.replaceInStrings("'", "'\\''").join("' '") + "'";
// Now, the temporary file for the script
QTemporaryFile tmpFile("SQLiteStudio-XXXXXX.sh");
if (!tmpFile.open())
{
if (stdErr)
- *stdErr = encode(QString("Could not create temporary file: %1").arg(tmpFile.fileName()));
+ *stdErr = encode(QString("Could not create temporary file: %1 (%2)").arg(tmpFile.fileName(), tmpFile.errorString()));
return false;
}