--- a/imgtools/romtools/rofsbuild/r_rofs.cpp Wed Nov 17 13:47:08 2010 +0800
+++ b/imgtools/romtools/rofsbuild/r_rofs.cpp Wed Nov 17 14:05:07 2010 +0800
@@ -263,6 +263,7 @@
}
class Worker : public boost::thread {
public:
+ static boost::mutex iOutputMutex;
static void thrd_func(E32Rofs* rofs){
CBytePair bpe;
@@ -274,6 +275,8 @@
//no symbol for hidden file
if(rofs->iSymGen && !p->node->iEntry->iHidden)
rofs->iSymGen->AddFile(p->node->iEntry->iFileName,(p->node->iEntry->iCompressEnabled|| p->node->iEntry->iExecutable));
+ boost::mutex::scoped_lock lock(iOutputMutex);
+ p->node->FlushLogMessages();
}
p = rofs->GetFileNode(deferred);
}
@@ -288,6 +291,8 @@
}
};
+boost::mutex Worker::iOutputMutex;
+
TPlacingSection* E32Rofs::GetFileNode(bool &aDeferred) {
//get a node from the node list, the node list is protected by mutex iMuxTree.
//The iMuxTree also helps to make sure the order in iVPS is consistent with the node list.