imgtools/romtools/rofsbuild/r_rofs.cpp
changeset 691 9eeecb73a5d4
parent 654 7c11c3d8d025
child 692 1dfff72f0961
--- 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.