summaryrefslogtreecommitdiff
authorzecke <zecke>2002-10-31 18:42:29 (UTC)
committer zecke <zecke>2002-10-31 18:42:29 (UTC)
commit3c76157137de747176466df8c7ecb85105ab9d53 (patch) (side-by-side diff)
tree3c93ed589d8b9fb05dfa139ef21c77649daa7bd1
parent1793c4b5f743c31be9db1fbb0b3fbbe08df7df28 (diff)
downloadopie-3c76157137de747176466df8c7ecb85105ab9d53.zip
opie-3c76157137de747176466df8c7ecb85105ab9d53.tar.gz
opie-3c76157137de747176466df8c7ecb85105ab9d53.tar.bz2
The if file exists check was wrong..
I limit it to a /bin/bash check...
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/opie-console/MyPty.cpp6
1 files changed, 2 insertions, 4 deletions
diff --git a/noncore/apps/opie-console/MyPty.cpp b/noncore/apps/opie-console/MyPty.cpp
index c3c58be..23d4966 100644
--- a/noncore/apps/opie-console/MyPty.cpp
+++ b/noncore/apps/opie-console/MyPty.cpp
@@ -280,53 +280,51 @@ QString MyPty::name()const{
}
bool MyPty::open() {
if (m_fd < 0)
m_fd = openPty();
start();
return true;
}
void MyPty::close() {
donePty();
m_fd = openPty();
}
void MyPty::reload( const Profile& prof) {
m_env.clear();
m_cmd = prof.readEntry("Command", "/bin/sh");
/*
* Lets check if m_cmd actually
* exists....
* we try to use bin/bash and if
* this fails we
* will fallback to /bin/sh
* which should be there 100%
*/
- if ( !QFile::exists(QFile::encodeName(m_cmd) ) )
- if (QFile::exists("/bin/bash") )
- m_cmd = "/bin/bash";
- else
+ if ( m_cmd.stripWhiteSpace() == "/bin/bash" && !QFile::exists(QFile::encodeName(m_cmd) ) )
m_cmd = "/bin/sh";
+
int envcount = prof.readNumEntry("EnvVars", 0);
for (int i=0; i<envcount; i++) {
QString name = prof.readEntry("Env_Name_" + QString::number(i), "");
QString value = prof.readEntry("Env_Value_" + QString::number(i), "");
if (!(name.isEmpty() || value.isEmpty())) {
m_env.insert(name, value);
}
}
}
/*! sends len bytes through the line */
void MyPty::send(const QByteArray& ar)
{
#ifdef VERBOSE_DEBUG
// verbose debug
printf("sending bytes:\n");
for (uint i = 0; i < ar.count(); i++)
printf("%c", ar[i]);
printf("\n");
#endif
::write(m_fd, ar.data(), ar.count());
}