From: <tom...@us...> - 2010-12-19 09:10:50
|
Revision: 3847 http://tora.svn.sourceforge.net/tora/?rev=3847&view=rev Author: tomasstraupis Date: 2010-12-19 09:10:41 +0000 (Sun, 19 Dec 2010) Log Message: ----------- Fix cache update crash. Modified Paths: -------------- trunk/tora/src/tocache.cpp Modified: trunk/tora/src/tocache.cpp =================================================================== --- trunk/tora/src/tocache.cpp 2010-12-18 21:19:06 UTC (rev 3846) +++ trunk/tora/src/tocache.cpp 2010-12-19 09:10:41 UTC (rev 3847) @@ -517,17 +517,19 @@ { if (OwnerExists) { - while ((*currentObjects).Type != type && currentObjects != ObjectNames.end()) + while (currentObjects != ObjectNames.end() && + (*currentObjects).Type != type) currentObjects++; // skip cached objects of other types - //qDebug() << "iterating through (new:curr)" << (*newObjects).Name << (*currentObjects).Name; - if ((*currentObjects).Name == (*newObjects).Name) + if (currentObjects != ObjectNames.end() && + (*currentObjects).Name == (*newObjects).Name) { //qDebug() << "Object is already in cache" << (*newObjects).Name; currentObjects++; newObjects++; } - else if ((*currentObjects).Name < (*newObjects).Name) + else if (currentObjects != ObjectNames.end() && + (*currentObjects).Name < (*newObjects).Name) { //qDebug() << "DELETE:" << (*currentObjects).Name; currentObjects = ObjectNames.erase(currentObjects); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tom...@us...> - 2011-01-09 14:34:09
|
Revision: 3865 http://tora.svn.sourceforge.net/tora/?rev=3865&view=rev Author: tomasstraupis Date: 2011-01-09 14:34:03 +0000 (Sun, 09 Jan 2011) Log Message: ----------- Fix cache crash with cache option set to "start read object cache when needed". Modified Paths: -------------- trunk/tora/src/tocache.cpp Modified: trunk/tora/src/tocache.cpp =================================================================== --- trunk/tora/src/tocache.cpp 2011-01-07 06:24:03 UTC (rev 3864) +++ trunk/tora/src/tocache.cpp 2011-01-09 14:34:03 UTC (rev 3865) @@ -190,7 +190,8 @@ return true; if (toConfigurationSingle::Instance().objectCache() == 2 && !block) return true; - readObjects(t); + if (t) + readObjects(t); toMainWidget()->checkCaching(); } if (ReadingValues.getValue() == 0 || (ReadingValues.getValue() == 1 && synonyms == true)) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2011-09-05 12:31:29
|
Revision: 4056 http://tora.svn.sourceforge.net/tora/?rev=4056&view=rev Author: subik Date: 2011-09-05 12:31:23 +0000 (Mon, 05 Sep 2011) Log Message: ----------- fix crash when there are / in connection description Modified Paths: -------------- trunk/tora/src/tocache.cpp Modified: trunk/tora/src/tocache.cpp =================================================================== --- trunk/tora/src/tocache.cpp 2011-09-05 11:05:00 UTC (rev 4055) +++ trunk/tora/src/tocache.cpp 2011-09-05 12:31:23 UTC (rev 4056) @@ -2,6 +2,7 @@ #include "tocache.h" #include "toconfiguration.h" #include "utils.h" +#include <QtDebug> #include <QDir> #include <QDateTime> #include <QTextStream> @@ -440,7 +441,13 @@ QString toCache::cacheFile() { - return (cacheDir() + "/" + ConnectionDescription).trimmed(); + QString ret (ConnectionDescription.trimmed()); + // using instantclient connectionstrins can result in file name like this: + // isepl_global_stage@//oraclexe11:1521/xe + // which is invalid. Just remove "/" or replace it with something safer. + ret = ret.replace("/", "_"); + + return cacheDir() + "/" + ret; } // cacheFile bool toCache::loadDiskCache() @@ -569,9 +576,13 @@ /** Write all records to a file */ QFile file(filename); - file.open(QIODevice::ReadWrite | QIODevice::Truncate); - QTextStream t(&file); - t << records.join("\x1D"); - file.flush(); - file.close(); + if (file.open(QIODevice::ReadWrite | QIODevice::Truncate)) + { + QTextStream t(&file); + t << records.join("\x1D"); + file.flush(); + file.close(); + } + else + qDebug() << "Cannot open file" << filename << "!"; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ibr...@us...> - 2012-04-25 13:31:46
|
Revision: 4282 http://tora.svn.sourceforge.net/tora/?rev=4282&view=rev Author: ibre5041 Date: 2012-04-25 13:31:40 +0000 (Wed, 25 Apr 2012) Log Message: ----------- lock toCache while sorting objectNames - BTW toChache locking is a mess Modified Paths: -------------- trunk/tora/src/tocache.cpp Modified: trunk/tora/src/tocache.cpp =================================================================== --- trunk/tora/src/tocache.cpp 2012-04-25 09:43:22 UTC (rev 4281) +++ trunk/tora/src/tocache.cpp 2012-04-25 13:31:40 UTC (rev 4282) @@ -456,7 +456,6 @@ { if (!toConfigurationSingle::Instance().cacheDisk()) return false; - objectName *cur = 0; int objCounter = 0; int synCounter = 0; @@ -526,8 +525,10 @@ } } - ObjectNames.sort(); - + { + toLocker lock(cacheLock); + ObjectNames.sort(); + } return true; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ibr...@us...> - 2012-06-06 15:16:42
|
Revision: 4337 http://tora.svn.sourceforge.net/tora/?rev=4337&view=rev Author: ibre5041 Date: 2012-06-06 15:16:30 +0000 (Wed, 06 Jun 2012) Log Message: ----------- colon is not valid filename character on Windows Modified Paths: -------------- trunk/tora/src/tocache.cpp Modified: trunk/tora/src/tocache.cpp =================================================================== --- trunk/tora/src/tocache.cpp 2012-06-05 23:45:57 UTC (rev 4336) +++ trunk/tora/src/tocache.cpp 2012-06-06 15:16:30 UTC (rev 4337) @@ -448,6 +448,7 @@ // isepl_global_stage@//oraclexe11:1521/xe // which is invalid. Just remove "/" or replace it with something safer. ret = ret.replace("/", "_"); + ret = ret.replace(":", "~"); return cacheDir() + "/" + ret; } // cacheFile This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |