summaryrefslogtreecommitdiffabout
authorzautrix <zautrix>2004-09-11 23:25:03 (UTC)
committer zautrix <zautrix>2004-09-11 23:25:03 (UTC)
commit0a2900e71fd3d80393d67c81aab3aae19d2d680c (patch) (unidiff)
tree1f2926eca6bee600819932603eaaf28c7f267d6b
parenta040c9d56282dae396b02627fafb602e44323837 (diff)
downloadkdepimpi-0a2900e71fd3d80393d67c81aab3aae19d2d680c.zip
kdepimpi-0a2900e71fd3d80393d67c81aab3aae19d2d680c.tar.gz
kdepimpi-0a2900e71fd3d80393d67c81aab3aae19d2d680c.tar.bz2
Bugfixes
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--kabc/plugins/dir/resourcedir.cpp32
-rw-r--r--kabc/plugins/file/resourcefile.cpp16
-rw-r--r--kabc/plugins/sharpdtm/resourcesharpdtm.cpp15
-rw-r--r--kmicromail/accountitem.h2
4 files changed, 44 insertions, 21 deletions
diff --git a/kabc/plugins/dir/resourcedir.cpp b/kabc/plugins/dir/resourcedir.cpp
index fac06a1..7d96cb7 100644
--- a/kabc/plugins/dir/resourcedir.cpp
+++ b/kabc/plugins/dir/resourcedir.cpp
@@ -58,8 +58,10 @@ $Id$
58 58
59#include "resourcedir.h" 59#include "resourcedir.h"
60#include "syncprefwidget.h" 60#include "syncprefwidget.h"
61 61
62//#define ALLOW_LOCKING
63
62using namespace KABC; 64using namespace KABC;
63 65
64extern "C" 66extern "C"
65#ifdef _WIN32_ 67#ifdef _WIN32_
@@ -135,18 +137,19 @@ void ResourceDir::writeConfig( KConfig *config )
135} 137}
136 138
137Ticket *ResourceDir::requestSaveTicket() 139Ticket *ResourceDir::requestSaveTicket()
138{ 140{
139 kdDebug(5700) << "ResourceDir::requestSaveTicket()" << endl; 141
140 142
141 if ( !addressBook() ) return 0; 143 if ( !addressBook() ) return 0;
142 144#ifdef ALLOW_LOCKING
143 if ( !lock( mPath ) ) { 145 if ( !lock( mPath ) ) {
144 kdDebug(5700) << "ResourceDir::requestSaveTicket(): Unable to lock path '" 146
145 << mPath << "'" << endl;
146 return 0; 147 return 0;
147 } 148 }
149#endif
148 return createTicket( this ); 150 return createTicket( this );
151
149} 152}
150 153
151 154
152bool ResourceDir::doOpen() 155bool ResourceDir::doOpen()
@@ -177,10 +180,8 @@ void ResourceDir::doClose()
177} 180}
178 181
179bool ResourceDir::load() 182bool ResourceDir::load()
180{ 183{
181 kdDebug(5700) << "ResourceDir::load(): '" << mPath << "'" << endl;
182
183 QDir dir( mPath ); 184 QDir dir( mPath );
184 QStringList files = dir.entryList( QDir::Files ); 185 QStringList files = dir.entryList( QDir::Files );
185 186
186 QStringList::Iterator it; 187 QStringList::Iterator it;
@@ -204,10 +205,8 @@ bool ResourceDir::load()
204} 205}
205 206
206bool ResourceDir::save( Ticket *ticket ) 207bool ResourceDir::save( Ticket *ticket )
207{ 208{
208 kdDebug(5700) << "ResourceDir::save(): '" << mPath << "'" << endl;
209
210 AddressBook::Iterator it; 209 AddressBook::Iterator it;
211 bool ok = true; 210 bool ok = true;
212 211
213 mDirWatch.stopScan(); 212 mDirWatch.stopScan();
@@ -231,27 +230,25 @@ bool ResourceDir::save( Ticket *ticket )
231 } 230 }
232 mDirWatch.startScan(); 231 mDirWatch.startScan();
233 232
234 delete ticket; 233 delete ticket;
234#ifdef ALLOW_LOCKING
235 unlock( mPath ); 235 unlock( mPath );
236 236#endif
237 return ok; 237 return ok;
238} 238}
239 239
240bool ResourceDir::lock( const QString &path ) 240bool ResourceDir::lock( const QString &path )
241{ 241{
242 kdDebug(5700) << "ResourceDir::lock()" << endl; 242#ifdef ALLOW_LOCKING
243
244 QString p = path; 243 QString p = path;
245//US change the implementation how the lockfilename is getting created 244//US change the implementation how the lockfilename is getting created
246//US p.replace( QRegExp("/"), "_" ); 245//US p.replace( QRegExp("/"), "_" );
247//US QString lockName = locateLocal( "data", "kabc/lock/" + p + ".lock" ); 246//US QString lockName = locateLocal( "data", "kabc/lock/" + p + ".lock" );
248 KURL url(p); 247 KURL url(p);
249 QString lockName = locateLocal( "data", "kabc/lock/" + url.fileName() + ".lock" ); 248 QString lockName = locateLocal( "data", "kabc/lock/" + url.fileName() + ".lock" );
250 249
251 250
252 kdDebug(5700) << "-- lock name: " << lockName << endl;
253
254 if ( QFile::exists( lockName ) ) return false; 251 if ( QFile::exists( lockName ) ) return false;
255 252
256 QString lockUniqueName; 253 QString lockUniqueName;
257 lockUniqueName = p + KApplication::randomString( 8 ); 254 lockUniqueName = p + KApplication::randomString( 8 );
@@ -259,10 +256,8 @@ bool ResourceDir::lock( const QString &path )
259 url = lockUniqueName; 256 url = lockUniqueName;
260//US mLockUniqueName = locateLocal( "data", "kabc/lock/" + lockUniqueName ); 257//US mLockUniqueName = locateLocal( "data", "kabc/lock/" + lockUniqueName );
261 mLockUniqueName = locateLocal( "data", "kabc/lock/" + url.fileName() ); 258 mLockUniqueName = locateLocal( "data", "kabc/lock/" + url.fileName() );
262 259
263 kdDebug(5700) << "-- lock unique name: " << mLockUniqueName << endl;
264
265 // Create unique file 260 // Create unique file
266 QFile file( mLockUniqueName ); 261 QFile file( mLockUniqueName );
267 file.open( IO_WriteOnly ); 262 file.open( IO_WriteOnly );
268 file.close(); 263 file.close();
@@ -280,12 +275,16 @@ bool ResourceDir::lock( const QString &path )
280 275
281 // TODO: check stat 276 // TODO: check stat
282 277
283 return false; 278 return false;
279#else
280 return true;
281#endif
284} 282}
285 283
286void ResourceDir::unlock( const QString &path ) 284void ResourceDir::unlock( const QString &path )
287{ 285{
286#ifdef ALLOW_LOCKING
288 QString p = path; 287 QString p = path;
289//US change the implementation how the lockfilename is getting created 288//US change the implementation how the lockfilename is getting created
290//US p.replace( QRegExp( "/" ), "_" ); 289//US p.replace( QRegExp( "/" ), "_" );
291//US QString lockName = locate( "data", "kabc/lock/" + p + ".lock" ); 290//US QString lockName = locate( "data", "kabc/lock/" + p + ".lock" );
@@ -294,8 +293,11 @@ void ResourceDir::unlock( const QString &path )
294 293
295 ::unlink( QFile::encodeName( lockName ) ); 294 ::unlink( QFile::encodeName( lockName ) );
296 QFile::remove( mLockUniqueName ); 295 QFile::remove( mLockUniqueName );
297 addressBook()->emitAddressBookUnlocked(); 296 addressBook()->emitAddressBookUnlocked();
297#else
298 return;
299#endif
298} 300}
299 301
300void ResourceDir::setPath( const QString &path ) 302void ResourceDir::setPath( const QString &path )
301{ 303{
diff --git a/kabc/plugins/file/resourcefile.cpp b/kabc/plugins/file/resourcefile.cpp
index fa6bc49..17263ae 100644
--- a/kabc/plugins/file/resourcefile.cpp
+++ b/kabc/plugins/file/resourcefile.cpp
@@ -52,8 +52,9 @@ $Id$
52 52
53#include "resourcefile.h" 53#include "resourcefile.h"
54#include "syncprefwidget.h" 54#include "syncprefwidget.h"
55 55
56//#define ALLOW_LOCKING
56 57
57using namespace KABC; 58using namespace KABC;
58 59
59extern "C" 60extern "C"
@@ -146,13 +147,14 @@ Ticket *ResourceFile::requestSaveTicket()
146 kdDebug(5700) << "ResourceFile::requestSaveTicket()" << endl; 147 kdDebug(5700) << "ResourceFile::requestSaveTicket()" << endl;
147 148
148 if ( !addressBook() ) return 0; 149 if ( !addressBook() ) return 0;
149 150
151#ifdef ALLOW_LOCKING
150 if ( !lock( mFileName ) ) { 152 if ( !lock( mFileName ) ) {
151 kdDebug(5700) << "ResourceFile::requestSaveTicket(): Unable to lock file '" 153 qDebug("unablt to lock file ");
152 << mFileName << "'" << endl;
153 return 0; 154 return 0;
154 } 155 }
156#endif
155 return createTicket( this ); 157 return createTicket( this );
156} 158}
157 159
158 160
@@ -245,15 +247,18 @@ bool ResourceFile::save( Ticket *ticket )
245 247
246 mDirWatch.startScan(); 248 mDirWatch.startScan();
247 249
248 delete ticket; 250 delete ticket;
251#ifdef ALLOW_LOCKING
249 unlock( mFileName ); 252 unlock( mFileName );
253#endif
250 254
251 return ok; 255 return ok;
252} 256}
253 257
254bool ResourceFile::lock( const QString &fileName ) 258bool ResourceFile::lock( const QString &fileName )
255{ 259{
260#ifdef ALLOW_LOCKING
256 261
257 262
258 QString fn = fileName; 263 QString fn = fileName;
259 264
@@ -294,12 +299,16 @@ bool ResourceFile::lock( const QString &fileName )
294 299
295 // TODO: check stat 300 // TODO: check stat
296 301
297 return false; 302 return false;
303#else
304 return true;
305#endif
298} 306}
299 307
300void ResourceFile::unlock( const QString &fileName ) 308void ResourceFile::unlock( const QString &fileName )
301{ 309{
310#ifdef ALLOW_LOCKING
302 QString fn = fileName; 311 QString fn = fileName;
303//US change the implementation how the lockfilename is getting created 312//US change the implementation how the lockfilename is getting created
304//US fn.replace( QRegExp( "/" ), "_" ); 313//US fn.replace( QRegExp( "/" ), "_" );
305//US QString lockName = locateLocal( "data", "kabc/lock/" + fn + ".lock" ); 314//US QString lockName = locateLocal( "data", "kabc/lock/" + fn + ".lock" );
@@ -309,8 +318,11 @@ void ResourceFile::unlock( const QString &fileName )
309 318
310 QFile::remove( lockName ); 319 QFile::remove( lockName );
311 QFile::remove( mLockUniqueName ); 320 QFile::remove( mLockUniqueName );
312 addressBook()->emitAddressBookUnlocked(); 321 addressBook()->emitAddressBookUnlocked();
322#else
323 return;
324#endif
313} 325}
314 326
315void ResourceFile::setFileName( const QString &fileName ) 327void ResourceFile::setFileName( const QString &fileName )
316{ 328{
diff --git a/kabc/plugins/sharpdtm/resourcesharpdtm.cpp b/kabc/plugins/sharpdtm/resourcesharpdtm.cpp
index 8a795e9..867bc07 100644
--- a/kabc/plugins/sharpdtm/resourcesharpdtm.cpp
+++ b/kabc/plugins/sharpdtm/resourcesharpdtm.cpp
@@ -53,9 +53,9 @@ $Id$
53 53
54#include "stdaddressbook.h" 54#include "stdaddressbook.h"
55 55
56#include "sharpdtmconverter.h" 56#include "sharpdtmconverter.h"
57 57//#define ALLOW_LOCKING
58using namespace KABC; 58using namespace KABC;
59extern "C" 59extern "C"
60{ 60{
61 void *init_microkabc_sharpdtm() 61 void *init_microkabc_sharpdtm()
@@ -104,19 +104,20 @@ void ResourceSharpDTM::writeConfig( KConfig *config )
104} 104}
105 105
106Ticket *ResourceSharpDTM::requestSaveTicket() 106Ticket *ResourceSharpDTM::requestSaveTicket()
107{ 107{
108 kdDebug(5700) << "ResourceSharpDTM::requestSaveTicket()" << endl; 108
109 109
110 qDebug("ResourceSharpDTM::requestSaveTicket: %s", fileName().latin1()); 110 qDebug("ResourceSharpDTM::requestSaveTicket: %s", fileName().latin1());
111 111
112 if ( !addressBook() ) return 0; 112 if ( !addressBook() ) return 0;
113 113
114#ifdef ALLOW_LOCKING
114 if ( !lock( fileName() ) ) { 115 if ( !lock( fileName() ) ) {
115 kdDebug(5700) << "ResourceSharpDTM::requestSaveTicket(): Unable to lock file '" 116 qDebug("ResourceSharpDTM::requestSaveTicket(): Unable to lock file ");
116 << fileName() << "'" << endl;
117 return 0; 117 return 0;
118 } 118 }
119#endif
119 return createTicket( this ); 120 return createTicket( this );
120} 121}
121 122
122 123
@@ -239,8 +240,9 @@ bool ResourceSharpDTM::save( Ticket *ticket )
239} 240}
240 241
241bool ResourceSharpDTM::lock( const QString &lockfileName ) 242bool ResourceSharpDTM::lock( const QString &lockfileName )
242{ 243{
244#ifdef ALLOW_LOCKING
243 qDebug("ResourceSharpDTM::lock: %s", fileName().latin1()); 245 qDebug("ResourceSharpDTM::lock: %s", fileName().latin1());
244 246
245 kdDebug(5700) << "ResourceSharpDTM::lock()" << endl; 247 kdDebug(5700) << "ResourceSharpDTM::lock()" << endl;
246 248
@@ -284,12 +286,16 @@ bool ResourceSharpDTM::lock( const QString &lockfileName )
284 286
285 // TODO: check stat 287 // TODO: check stat
286 288
287 return false; 289 return false;
290#else
291 return true;
292#endif
288} 293}
289 294
290void ResourceSharpDTM::unlock( const QString &fileName ) 295void ResourceSharpDTM::unlock( const QString &fileName )
291{ 296{
297#ifdef ALLOW_LOCKING
292 qDebug("ResourceSharpDTM::unlock() %s", fileName.latin1()); 298 qDebug("ResourceSharpDTM::unlock() %s", fileName.latin1());
293 299
294 QString fn = fileName; 300 QString fn = fileName;
295 KURL url(fn); 301 KURL url(fn);
@@ -297,8 +303,9 @@ void ResourceSharpDTM::unlock( const QString &fileName )
297 303
298 QFile::remove( lockName ); 304 QFile::remove( lockName );
299 QFile::remove( mLockUniqueName ); 305 QFile::remove( mLockUniqueName );
300 addressBook()->emitAddressBookUnlocked(); 306 addressBook()->emitAddressBookUnlocked();
307#endif
301} 308}
302 309
303void ResourceSharpDTM::setFileName( const QString &newFileName ) 310void ResourceSharpDTM::setFileName( const QString &newFileName )
304{ 311{
diff --git a/kmicromail/accountitem.h b/kmicromail/accountitem.h
index faf919d..4c92bfc 100644
--- a/kmicromail/accountitem.h
+++ b/kmicromail/accountitem.h
@@ -1,10 +1,12 @@
1#ifndef __ACCOUNT_ITEM 1#ifndef __ACCOUNT_ITEM
2#define __ACCOUNT_ITEM 2#define __ACCOUNT_ITEM
3 3
4
4#include <qlistview.h> 5#include <qlistview.h>
5#include <qlist.h> 6#include <qlist.h>
6#include <opie2/osmartpointer.h> 7#include <opie2/osmartpointer.h>
8#include <libmailwrapper/mailwrapper.h>
7 9
8class POP3wrapper; 10class POP3wrapper;
9class RecMail; 11class RecMail;
10class RecBody; 12class RecBody;