From 35d40e65116cee8b430cdc586db187f81488aa1d Mon Sep 17 00:00:00 2001 From: andyq Date: Wed, 04 Dec 2002 23:15:20 +0000 Subject: Added new method to get available space on a volume --- (limited to 'noncore/settings/aqpkg') diff --git a/noncore/settings/aqpkg/utils.cpp b/noncore/settings/aqpkg/utils.cpp index 77d82d4..446ce39 100644 --- a/noncore/settings/aqpkg/utils.cpp +++ b/noncore/settings/aqpkg/utils.cpp @@ -15,6 +15,10 @@ * * ***************************************************************************/ +#include +#include +//#include + #include "utils.h" #include "global.h" @@ -54,7 +58,7 @@ QString Utils :: getPackageNameFromIpkFilename( const QString &file ) int p = file.findRev( "/" ); QString name = file; if ( p != -1 ) - name = name.mid( p + 1 ); + name = name.mid( p + 1 ); p = name.find( "_" ); QString packageName = name.mid( 0, p ); return packageName; @@ -72,3 +76,21 @@ QString Utils :: getPackageVersionFromIpkFilename( const QString &file ) return version; } + +bool Utils :: getStorageSpace( const char *path, long *blockSize, long *totalBlocks, long *availBlocks ) +{ + bool ret = false; + +// qDebug( "Reading from path %s", path ); + struct statfs fs; + if ( !statfs( path, &fs ) ) + { + *blockSize = fs.f_bsize; + *totalBlocks = fs.f_blocks; + *availBlocks = fs.f_bavail; + ret = true; + } + + return ret; +} + diff --git a/noncore/settings/aqpkg/utils.h b/noncore/settings/aqpkg/utils.h index 15ee4e6..c572f7b 100644 --- a/noncore/settings/aqpkg/utils.h +++ b/noncore/settings/aqpkg/utils.h @@ -33,6 +33,7 @@ public: static QString getFilenameFromIpkFilename( const QString &file ); static QString getPackageNameFromIpkFilename( const QString &file ); static QString getPackageVersionFromIpkFilename( const QString &file ); + static bool getStorageSpace( const char *path, long *blockSize, long *totalBlocks, long *availBlocks ); }; #endif -- cgit v0.9.0.2