summaryrefslogtreecommitdiff
authoreilers <eilers>2004-10-26 11:18:23 (UTC)
committer eilers <eilers>2004-10-26 11:18:23 (UTC)
commit8d8b23bff18b8afd42840ef1d4574ef3ea9f8cee (patch) (unidiff)
tree04505b36b73f00bcd31666d30bc7cd80883729e6
parentcd3245ade209b4672ab5c51003aa66b5908c67a1 (diff)
downloadopie-8d8b23bff18b8afd42840ef1d4574ef3ea9f8cee.zip
opie-8d8b23bff18b8afd42840ef1d4574ef3ea9f8cee.tar.gz
opie-8d8b23bff18b8afd42840ef1d4574ef3ea9f8cee.tar.bz2
Protect against error in database format. Recover to old if database was
unreadable ..
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/tools/pimconverter/converter.cpp22
1 files changed, 18 insertions, 4 deletions
diff --git a/noncore/tools/pimconverter/converter.cpp b/noncore/tools/pimconverter/converter.cpp
index e8bd475..d92f382 100644
--- a/noncore/tools/pimconverter/converter.cpp
+++ b/noncore/tools/pimconverter/converter.cpp
@@ -248,9 +248,9 @@ bool Converter::sqliteMoveAndConvert( const QString& name, const QString& src, c
248 248
249 249
250 if ( error ){ 250 if ( error ){
251 QMessageBox::critical( this, tr("Pim-Converter"), 251 QMessageBox::critical( this, tr("Pim-Converter"),
252 tr("<qt>Conversion not possible: \n" 252 tr("<qt>Conversion not possible: <br>"
253 "Problem: %1</qt>").arg(cmd) ); 253 "Problem: %1</qt>").arg(cmd) );
254 return error; 254 return error;
255 } 255 }
256 256
@@ -273,15 +273,29 @@ bool Converter::sqliteMoveAndConvert( const QString& name, const QString& src, c
273 error = true; 273 error = true;
274 } 274 }
275 } 275 }
276 276
277
278 /*
279 * Check whether conversion really worked. If not, move old database back to recover it
280 */
281 if ( !QFile::exists( src ) ){
282 cmd = "mv " + Global::shellQuote(dest) + " " + Global::shellQuote(src);
283 if ( ::system( cmd ) != 0 ){
284 }
285 error = true;
286 cmd = "Database-Format is not V2!?";
287 }
288
277 if ( error ){ 289 if ( error ){
278 QMessageBox::critical( this, tr("Pim-Converter"), 290 QMessageBox::critical( this, tr("Pim-Converter"),
279 tr("<qt>An internal error occurred: " 291 tr("<qt>An internal error occurred: <br>"
280 "Converting the database was impossible! " 292 "Converting the database was impossible! <br>"
281 "Command: '%1' </qt>").arg(cmd) ); 293 "Command/Reason: '%1' </qt>").arg(cmd) );
282 294
283 } 295 }
296
297
284} 298}
285 299
286 300
287 301