- Timestamp:
- May 26, 2011, 10:21:28 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/corelib/io/qfilesystemwatcher.cpp
r846 r869 171 171 emit directoryChanged(path, true); 172 172 } else if (x.value() != fi) { 173 x.value() = fi; 174 emit directoryChanged(path, false); 173 fi.refresh(); 174 if (!fi.exists()) { 175 dit.remove(); 176 emit directoryChanged(path, true); 177 } else { 178 x.value() = fi; 179 emit directoryChanged(path, false); 180 } 175 181 } 176 182 yieldCurrentThread(); … … 250 256 { 251 257 QMutexLocker locker(&mutex); 252 QMutableHashIterator<QString, FileInfo> fit(files); 253 while (fit.hasNext()) { 254 QHash<QString, FileInfo>::iterator x = fit.next(); 255 QString path = x.key(); 256 QFileInfo fi(path); 257 if (!fi.exists()) { 258 fit.remove(); 259 emit fileChanged(path, true); 260 } else if (x.value() != fi) { 261 x.value() = fi; 262 emit fileChanged(path, false); 263 } 264 } 265 QMutableHashIterator<QString, FileInfo> dit(directories); 266 while (dit.hasNext()) { 267 QHash<QString, FileInfo>::iterator x = dit.next(); 268 QString path = x.key(); 269 QFileInfo fi(path); 270 if (!path.endsWith(QLatin1Char('/'))) 271 fi = QFileInfo(path + QLatin1Char('/')); 272 if (!fi.exists()) { 273 dit.remove(); 274 emit directoryChanged(path, true); 275 } else if (x.value() != fi) { 276 fi.refresh(); 277 if (!fi.exists()) { 278 dit.remove(); 279 emit directoryChanged(path, true); 280 } else { 281 x.value() = fi; 282 emit directoryChanged(path, false); 283 } 284 } 285 286 } 258 startOver = true; 259 askedToFinish = true; 260 waitCond.wakeAll(); 287 261 } 288 262
Note:
See TracChangeset
for help on using the changeset viewer.