Fix FTBFS on tmpvfs

feat/lzip-support
Slávek Banko 11 years ago
parent e6abeff039
commit d7e200c5df

@ -56,7 +56,7 @@ temp_vfs::temp_vfs( TQString origin, TQString type, TQWidget* panel, bool ):
} }
temp_vfs::~temp_vfs(){ temp_vfs::~temp_vfs(){
if( vfs_type == "-iso" ){ if( tmpvfs_type == ISO ){
// unmount the ISO image // unmount the ISO image
KShellProcess umount; KShellProcess umount;
umount << "umount -f" << tmpDir; umount << "umount -f" << tmpDir;
@ -94,6 +94,13 @@ bool temp_vfs::vfs_refresh(const KURL& origin){
} }
void temp_vfs::handleAceArj(TQString origin, TQString type){ void temp_vfs::handleAceArj(TQString origin, TQString type){
if (type == "-ace") {
tmpvfs_type = ACE;
}
else if (type == "-arj") {
tmpvfs_type = ARJ;
}
// for ace and arj we just unpack to the tmpDir // for ace and arj we just unpack to the tmpDir
if( !KRarcHandler::arcHandled(type) ){ if( !KRarcHandler::arcHandled(type) ){
if (!quietMode) KMessageBox::error(krApp,"This archive type is NOT supported"); if (!quietMode) KMessageBox::error(krApp,"This archive type is NOT supported");
@ -117,6 +124,7 @@ void temp_vfs::handleRpm(TQString origin){
rpm.clearArguments(); rpm.clearArguments();
rpm << "rpm -lpq"<<"\""+origin+"\""+" > "+tmpDir+"/filelist.txt"; rpm << "rpm -lpq"<<"\""+origin+"\""+" > "+tmpDir+"/filelist.txt";
rpm.start(TDEProcess::Block); rpm.start(TDEProcess::Block);
tmpvfs_type = RPM;
} }
void temp_vfs::handleIso(TQString origin){ void temp_vfs::handleIso(TQString origin){
@ -124,4 +132,5 @@ void temp_vfs::handleIso(TQString origin){
KShellProcess mount; KShellProcess mount;
mount << KrServices::fullPathName( "mount" ) << "-o loop" << origin << tmpDir; mount << KrServices::fullPathName( "mount" ) << "-o loop" << origin << tmpDir;
mount.start(TDEProcess::Block); mount.start(TDEProcess::Block);
tmpvfs_type = ISO;
} }

@ -37,6 +37,8 @@
class temp_vfs : public normal_vfs { class temp_vfs : public normal_vfs {
public: public:
enum TMPVFS_TYPE{ERROR=0,ACE,ARJ,RPM,ISO};
temp_vfs( TQString origin, TQString type, TQWidget* panel, bool writeable); temp_vfs( TQString origin, TQString type, TQWidget* panel, bool writeable);
~temp_vfs(); ~temp_vfs();
TQString vfs_workingDir(); TQString vfs_workingDir();
@ -50,6 +52,7 @@ protected:
void handleAceArj(TQString origin, TQString type); void handleAceArj(TQString origin, TQString type);
void handleRpm(TQString origin); void handleRpm(TQString origin);
void handleIso(TQString origin); void handleIso(TQString origin);
TMPVFS_TYPE tmpvfs_type; //< the tmp vfs type.
TQString tmpDir; TQString tmpDir;
}; };

Loading…
Cancel
Save