author | ulf69 <ulf69> | 2004-08-20 19:53:52 (UTC) |
---|---|---|
committer | ulf69 <ulf69> | 2004-08-20 19:53:52 (UTC) |
commit | a3083042bb9c69193cc43105e6c9d045bd79e8b2 (patch) (side-by-side diff) | |
tree | 6d89eb16d0661b03316117aca6f919339ef5df1d /kabc/plugins/dir | |
parent | b42c4af4200c67802ee0cc57e10e1464903736b7 (diff) | |
download | kdepimpi-a3083042bb9c69193cc43105e6c9d045bd79e8b2.zip kdepimpi-a3083042bb9c69193cc43105e6c9d045bd79e8b2.tar.gz kdepimpi-a3083042bb9c69193cc43105e6c9d045bd79e8b2.tar.bz2 |
merged bugfix from KDE Head: Don't KDirWatch for own changes
-rw-r--r-- | kabc/plugins/dir/resourcedir.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/kabc/plugins/dir/resourcedir.cpp b/kabc/plugins/dir/resourcedir.cpp index eccd482..fac06a1 100644 --- a/kabc/plugins/dir/resourcedir.cpp +++ b/kabc/plugins/dir/resourcedir.cpp @@ -197,49 +197,52 @@ bool ResourceDir::load() if ( !mFormat->loadAll( addressBook(), this, &file ) ) ok = false; file.close(); } return ok; } bool ResourceDir::save( Ticket *ticket ) { kdDebug(5700) << "ResourceDir::save(): '" << mPath << "'" << endl; AddressBook::Iterator it; bool ok = true; + mDirWatch.stopScan(); + for ( it = addressBook()->begin(); it != addressBook()->end(); ++it ) { if ( (*it).resource() != this || !(*it).changed() ) continue; QFile file( mPath + "/" + (*it).uid() ); if ( !file.open( IO_WriteOnly ) ) { addressBook()->error( i18n( "Unable to open file '%1' for writing" ).arg( file.name() ) ); continue; } mFormat->save( *it, &file ); // mark as unchanged (*it).setChanged( false ); file.close(); } + mDirWatch.startScan(); delete ticket; unlock( mPath ); return ok; } bool ResourceDir::lock( const QString &path ) { kdDebug(5700) << "ResourceDir::lock()" << endl; QString p = path; //US change the implementation how the lockfilename is getting created //US p.replace( QRegExp("/"), "_" ); //US QString lockName = locateLocal( "data", "kabc/lock/" + p + ".lock" ); KURL url(p); |