-rw-r--r-- | microkde/kio/kio/kdirwatch.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/microkde/kio/kio/kdirwatch.cpp b/microkde/kio/kio/kdirwatch.cpp index 98d24e0..1596d1f 100644 --- a/microkde/kio/kio/kdirwatch.cpp +++ b/microkde/kio/kio/kdirwatch.cpp | |||
@@ -586,25 +586,26 @@ void KDirWatchPrivate::addEntry(KDirWatch* instance, const QString& _path, | |||
586 | 586 | ||
587 | // we have a new path to watch | 587 | // we have a new path to watch |
588 | 588 | ||
589 | struct stat stat_buf; | 589 | struct stat stat_buf; |
590 | bool exists = (stat(QFile::encodeName(path), &stat_buf) == 0); | 590 | bool exists = (stat(QFile::encodeName(path), &stat_buf) == 0); |
591 | 591 | ||
592 | Entry newEntry; | 592 | Entry newEntry; |
593 | m_mapEntries.insert( path, newEntry ); | 593 | m_mapEntries.insert( path, newEntry ); |
594 | // the insert does a copy, so we have to use <e> now | 594 | // the insert does a copy, so we have to use <e> now |
595 | Entry* e = &(m_mapEntries[path]); | 595 | Entry* e = &(m_mapEntries[path]); |
596 | 596 | ||
597 | if (exists) { | 597 | if (exists) { |
598 | e->isDir = S_ISDIR(stat_buf.st_mode); | 598 | QFileInfo fi ( path ); |
599 | e->isDir = fi.isDir(); | ||
599 | 600 | ||
600 | if (e->isDir && !isDir) | 601 | if (e->isDir && !isDir) |
601 | qWarning("KDirWatch: %s is a directory. Use addDir!", path.ascii()); | 602 | qWarning("KDirWatch: %s is a directory. Use addDir!", path.ascii()); |
602 | else if (!e->isDir && isDir) | 603 | else if (!e->isDir && isDir) |
603 | qWarning("KDirWatch: %s is a file. Use addFile!", path.ascii()); | 604 | qWarning("KDirWatch: %s is a file. Use addFile!", path.ascii()); |
604 | 605 | ||
605 | e->m_ctime = stat_buf.st_ctime; | 606 | e->m_ctime = stat_buf.st_ctime; |
606 | e->m_status = Normal; | 607 | e->m_status = Normal; |
607 | e->m_nlink = stat_buf.st_nlink; | 608 | e->m_nlink = stat_buf.st_nlink; |
608 | } | 609 | } |
609 | else { | 610 | else { |
610 | e->isDir = isDir; | 611 | e->isDir = isDir; |