Diffstat (limited to 'kabc/plugins/dir/resourcedir.cpp') (more/less context) (ignore whitespace 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 | |||
@@ -201,41 +201,44 @@ bool ResourceDir::load() | |||
201 | } | 201 | } |
202 | 202 | ||
203 | return ok; | 203 | return ok; |
204 | } | 204 | } |
205 | 205 | ||
206 | bool ResourceDir::save( Ticket *ticket ) | 206 | bool ResourceDir::save( Ticket *ticket ) |
207 | { | 207 | { |
208 | kdDebug(5700) << "ResourceDir::save(): '" << mPath << "'" << endl; | 208 | kdDebug(5700) << "ResourceDir::save(): '" << mPath << "'" << endl; |
209 | 209 | ||
210 | AddressBook::Iterator it; | 210 | AddressBook::Iterator it; |
211 | bool ok = true; | 211 | bool ok = true; |
212 | 212 | ||
213 | mDirWatch.stopScan(); | ||
214 | |||
213 | for ( it = addressBook()->begin(); it != addressBook()->end(); ++it ) { | 215 | for ( it = addressBook()->begin(); it != addressBook()->end(); ++it ) { |
214 | if ( (*it).resource() != this || !(*it).changed() ) | 216 | if ( (*it).resource() != this || !(*it).changed() ) |
215 | continue; | 217 | continue; |
216 | 218 | ||
217 | QFile file( mPath + "/" + (*it).uid() ); | 219 | QFile file( mPath + "/" + (*it).uid() ); |
218 | if ( !file.open( IO_WriteOnly ) ) { | 220 | if ( !file.open( IO_WriteOnly ) ) { |
219 | addressBook()->error( i18n( "Unable to open file '%1' for writing" ).arg( file.name() ) ); | 221 | addressBook()->error( i18n( "Unable to open file '%1' for writing" ).arg( file.name() ) ); |
220 | continue; | 222 | continue; |
221 | } | 223 | } |
222 | 224 | ||
223 | mFormat->save( *it, &file ); | 225 | mFormat->save( *it, &file ); |
224 | 226 | ||
225 | // mark as unchanged | 227 | // mark as unchanged |
226 | (*it).setChanged( false ); | 228 | (*it).setChanged( false ); |
227 | 229 | ||
228 | file.close(); | 230 | file.close(); |
229 | } | 231 | } |
232 | mDirWatch.startScan(); | ||
230 | 233 | ||
231 | delete ticket; | 234 | delete ticket; |
232 | unlock( mPath ); | 235 | unlock( mPath ); |
233 | 236 | ||
234 | return ok; | 237 | return ok; |
235 | } | 238 | } |
236 | 239 | ||
237 | bool ResourceDir::lock( const QString &path ) | 240 | bool ResourceDir::lock( const QString &path ) |
238 | { | 241 | { |
239 | kdDebug(5700) << "ResourceDir::lock()" << endl; | 242 | kdDebug(5700) << "ResourceDir::lock()" << endl; |
240 | 243 | ||
241 | QString p = path; | 244 | QString p = path; |