summaryrefslogtreecommitdiff
authorzecke <zecke>2004-10-11 20:31:43 (UTC)
committer zecke <zecke>2004-10-11 20:31:43 (UTC)
commit7541d90e82392e5e727d8bdc818c5ec2f7b2bd3e (patch) (side-by-side diff)
tree043b05fd959a83a5cd35a5c23517028bcbcd35a7
parentd063dce0ade1e18044cb8826963e47e979e9a280 (diff)
downloadopie-7541d90e82392e5e727d8bdc818c5ec2f7b2bd3e.zip
opie-7541d90e82392e5e727d8bdc818c5ec2f7b2bd3e.tar.gz
opie-7541d90e82392e5e727d8bdc818c5ec2f7b2bd3e.tar.bz2
'return 0' instead of no return from no void function. Lets see if that
fix breaks anything
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/settings/aqpkg/ipkg.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/noncore/settings/aqpkg/ipkg.cpp b/noncore/settings/aqpkg/ipkg.cpp
index 17efda9..dd9e78d 100644
--- a/noncore/settings/aqpkg/ipkg.cpp
+++ b/noncore/settings/aqpkg/ipkg.cpp
@@ -269,64 +269,66 @@ void Ipkg :: removeStatusEntry()
writeFile.close();
// Remove old status file and put tmp stats file in its place
remove( statusFile );
rename( outStatusFile, statusFile );
}
int Ipkg :: executeIpkgLinkCommand( QStringList *cmd )
{
// If one is already running - should never be but just to be safe
if ( proc )
{
delete proc;
proc = 0;
}
// OK we're gonna use OProcess to run this thing
proc = new OProcess();
aborted = false;
// Connect up our slots
connect(proc, SIGNAL(processExited(Opie::Core::OProcess*)),
this, SLOT( linkProcessFinished()));
connect(proc, SIGNAL(receivedStdout(Opie::Core::OProcess*,char*,int)),
this, SLOT(linkCommandStdout(Opie::Core::OProcess*,char*,int)));
*proc << *cmd;
if(!proc->start(OProcess::NotifyOnExit, OProcess::All))
{
emit outputText( tr("Couldn't start ipkg-link process" ) );
}
+
+ return 0;
}
void Ipkg::linkProcessFinished()
{
// Report that the link process succeeded/failed
if ( error )
emit outputText( tr("Symbolic linking failed!\n") );
else
emit outputText( tr("Symbolic linking succeeded.\n") );
delete proc;
proc = 0;
finished = true;
}
void Ipkg::linkCommandStdout(OProcess*, char *buffer, int buflen)
{
QString lineStr = buffer;
if ( lineStr[buflen-1] == '\n' )
buflen --;
lineStr = lineStr.left( buflen );
emit outputText( lineStr );
if ( lineStr.find( " not found." ) != -1 )
{
// Capture ipkg-link errors
error = true;
}
buffer[0] = '\0';
}
@@ -337,64 +339,66 @@ int Ipkg :: executeIpkgCommand( QStringList &cmd, const QString /*option*/ )
if ( proc )
{
delete proc;
proc = 0;
}
// OK we're gonna use OProcess to run this thing
proc = new OProcess();
aborted = false;
// Connect up our slots
connect(proc, SIGNAL(processExited(Opie::Core::OProcess*)),
this, SLOT( processFinished()));
connect(proc, SIGNAL(receivedStdout(Opie::Core::OProcess*,char*,int)),
this, SLOT(commandStdout(Opie::Core::OProcess*,char*,int)));
connect(proc, SIGNAL(receivedStderr(Opie::Core::OProcess*,char*,int)),
this, SLOT(commandStderr(Opie::Core::OProcess*,char*,int)));
for ( QStringList::Iterator it = cmd.begin(); it != cmd.end(); ++it )
{
*proc << (*it).latin1();
}
// Start the process going
finished = false;
if(!proc->start(OProcess::NotifyOnExit, OProcess::All))
{
emit outputText( tr("Couldn't start ipkg process" ) );
}
+
+ return 0;
}
void Ipkg::commandStdout(OProcess*, char *buffer, int buflen)
{
QString lineStr = buffer;
if ( lineStr[buflen-1] == '\n' )
buflen --;
lineStr = lineStr.left( buflen );
emit outputText( lineStr );
// check if we are installing dependant packages
if ( option == "install" || option == "reinstall" )
{
// Need to keep track of any dependant packages that get installed
// so that we can create links to them as necessary
if ( lineStr.startsWith( "Installing " ) )
{
int start = lineStr.find( " " ) + 1;
int end = lineStr.find( " ", start );
QString *package = new QString( lineStr.mid( start, end-start ) );
dependantPackages->append( package );
}
}
else if ( option == "remove" && !( flags & FORCE_DEPENDS ) &&
lineStr.find( "is depended upon by packages:" ) != -1 )
{
// Ipkg should send this to STDERR, but doesn't - so trap here
error = true;
}
buffer[0] = '\0';
}
@@ -408,64 +412,65 @@ void Ipkg::commandStderr(OProcess*, char *buffer, int buflen)
emit outputText( lineStr );
buffer[0] = '\0';
error = true;
}
void Ipkg::processFinished()
{
// Finally, if we are removing a package, remove its entry from the <destdir>/usr/lib/ipkg/status file
// to workaround an ipkg bug which stops reinstall to a different location
if ( !error && option == "remove" )
removeStatusEntry();
delete proc;
proc = 0;
finished = true;
emit ipkgFinished();
}
void Ipkg :: abort()
{
if ( proc )
{
proc->kill();
aborted = true;
}
}
void Ipkg :: linkPackage( const QString &packFileName, const QString &dest, const QString &destDir )
{
+ Q_CONST_UNUSED( destDir )
if ( dest == "root" || dest == "/" )
return;
if( option == "remove" || option == "reinstall" || option == "upgrade" )
{
QStringList commands;
if ( runtimeDir != "" )
{
commands << "cd ";
commands << runtimeDir;
commands << ";";
}
commands << "ipkg-link" << "remove" << packFileName;
executeIpkgLinkCommand( &commands );
}
if( option == "install" || option == "reinstall" || option == "upgrade" )
{
QStringList commands;
if ( runtimeDir != "" )
{
commands << "cd ";
commands << runtimeDir;
commands << ";";
}
commands << "ipkg-link" << "add" << packFileName;
executeIpkgLinkCommand( &commands );
}
/*
qApp->processEvents();
QStringList *fileList = getList( packFileName, destDir );