summaryrefslogtreecommitdiff
path: root/library
authorleseb <leseb>2002-08-04 17:00:12 (UTC)
committer leseb <leseb>2002-08-04 17:00:12 (UTC)
commit55019d84057f9c2bd2b2483da2c128a0a927e003 (patch) (unidiff)
tree1b77fb6b340ee3089edcec4e737e97cb2d0db53f /library
parent1a29ba832acf4d49398c498ce509cecc7cfb14a2 (diff)
downloadopie-55019d84057f9c2bd2b2483da2c128a0a927e003.zip
opie-55019d84057f9c2bd2b2483da2c128a0a927e003.tar.gz
opie-55019d84057f9c2bd2b2483da2c128a0a927e003.tar.bz2
Fix bug for RamFS on iPaq (not tested)
Diffstat (limited to 'library') (more/less context) (ignore whitespace changes)
-rw-r--r--library/storage.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/library/storage.cpp b/library/storage.cpp
index 096170f..2d996fa 100644
--- a/library/storage.cpp
+++ b/library/storage.cpp
@@ -76,65 +76,65 @@ const FileSystem *StorageInfo::fileSystemOf( const QString &filename )
76 for (QListIterator<FileSystem> i(mFileSystems); i.current(); ++i) { 76 for (QListIterator<FileSystem> i(mFileSystems); i.current(); ++i) {
77 if ( filename.startsWith( (*i)->path() ) ) 77 if ( filename.startsWith( (*i)->path() ) )
78 return (*i); 78 return (*i);
79 } 79 }
80 return 0; 80 return 0;
81} 81}
82 82
83 83
84void StorageInfo::cardMessage( const QCString& msg, const QByteArray& ) 84void StorageInfo::cardMessage( const QCString& msg, const QByteArray& )
85{ 85{
86 if ( msg == "mtabChanged()" ) 86 if ( msg == "mtabChanged()" )
87 update(); 87 update();
88} 88}
89// cause of the lack of a d pointer we need 89// cause of the lack of a d pointer we need
90// to store informations in a config file :( 90// to store informations in a config file :(
91void StorageInfo::update() 91void StorageInfo::update()
92{ 92{
93 //qDebug("StorageInfo::updating"); 93 //qDebug("StorageInfo::updating");
94#if defined(_OS_LINUX_) || defined(Q_OS_LINUX) 94#if defined(_OS_LINUX_) || defined(Q_OS_LINUX)
95 struct mntent *me; 95 struct mntent *me;
96 FILE *mntfp = setmntent( "/etc/mtab", "r" ); 96 FILE *mntfp = setmntent( "/etc/mtab", "r" );
97 97
98 QStringList curdisks; 98 QStringList curdisks;
99 QStringList curopts; 99 QStringList curopts;
100 QStringList curfs; 100 QStringList curfs;
101 bool rebuild = FALSE; 101 bool rebuild = FALSE;
102 int n=0; 102 int n=0;
103 if ( mntfp ) { 103 if ( mntfp ) {
104 while ( (me = getmntent( mntfp )) != 0 ) { 104 while ( (me = getmntent( mntfp )) != 0 ) {
105 QString fs = me->mnt_fsname; 105 QString fs = me->mnt_fsname;
106 if ( fs.left(7)=="/dev/hd" || fs.left(7)=="/dev/sd" 106 if ( fs.left(7)=="/dev/hd" || fs.left(7)=="/dev/sd"
107 || fs.left(8)=="/dev/mtd" || fs.left(9) == "/dev/mmcd" 107 || fs.left(8)=="/dev/mtd" || fs.left(9) == "/dev/mmcd"
108 || fs.left(8)=="/dev/ram") 108 || fs.left(8)=="/dev/ram" || fs.left(5)=="tmpfs" )
109 { 109 {
110 n++; 110 n++;
111 curdisks.append(fs); 111 curdisks.append(fs);
112 curopts.append( me->mnt_opts ); 112 curopts.append( me->mnt_opts );
113 //qDebug("-->fs %s opts %s", fs.latin1(), me->mnt_opts ); 113 //qDebug("-->fs %s opts %s", fs.latin1(), me->mnt_opts );
114 curfs.append( me->mnt_dir ); 114 curfs.append( me->mnt_dir );
115 bool found = FALSE; 115 bool found = FALSE;
116 for (QListIterator<FileSystem> i(mFileSystems); i.current(); ++i) { 116 for (QListIterator<FileSystem> i(mFileSystems); i.current(); ++i) {
117 if ( (*i)->disk() == fs ) { 117 if ( (*i)->disk() == fs ) {
118 found = TRUE; 118 found = TRUE;
119 break; 119 break;
120 } 120 }
121 } 121 }
122 if ( !found ) 122 if ( !found )
123 rebuild = TRUE; 123 rebuild = TRUE;
124 } 124 }
125 } 125 }
126 endmntent( mntfp ); 126 endmntent( mntfp );
127 } 127 }
128 if ( rebuild || n != (int)mFileSystems.count() ) { 128 if ( rebuild || n != (int)mFileSystems.count() ) {
129 mFileSystems.clear(); 129 mFileSystems.clear();
130 QStringList::ConstIterator it=curdisks.begin(); 130 QStringList::ConstIterator it=curdisks.begin();
131 QStringList::ConstIterator fsit=curfs.begin(); 131 QStringList::ConstIterator fsit=curfs.begin();
132 QStringList::ConstIterator optsIt=curopts.begin(); 132 QStringList::ConstIterator optsIt=curopts.begin();
133 for (; it!=curdisks.end(); ++it, ++fsit, ++optsIt) { 133 for (; it!=curdisks.end(); ++it, ++fsit, ++optsIt) {
134 QString opts = *optsIt; 134 QString opts = *optsIt;
135 135
136 QString disk = *it; 136 QString disk = *it;
137 QString humanname; 137 QString humanname;
138 bool removable = FALSE; 138 bool removable = FALSE;
139 if ( isCF(disk) ) { 139 if ( isCF(disk) ) {
140 humanname = tr("CF Card"); 140 humanname = tr("CF Card");