Fix locking for printing error messages.
Same as CL https://codereview.chromium.org/1071423003 (which has LGTM).
BUG= https://code.google.com/p/nativeclient/issues/detail?id=4138
Review URL: https://codereview.chromium.org/1097563003
diff --git a/src/PNaClTranslator.cpp b/src/PNaClTranslator.cpp
index 35cdcf7..ce46239 100644
--- a/src/PNaClTranslator.cpp
+++ b/src/PNaClTranslator.cpp
@@ -486,10 +486,12 @@
ErrorStatus.assign(Ice::EC_Bitcode);
++NumErrors;
Ice::GlobalContext *Context = Translator.getContext();
- Ice::OstreamLocker L(Context);
- raw_ostream &OldErrStream = setErrStream(Context->getStrDump());
- NaClBitcodeParser::ErrorAt(Level, Bit, Message);
- setErrStream(OldErrStream);
+ { // Lock while printing out error message.
+ Ice::OstreamLocker L(Context);
+ raw_ostream &OldErrStream = setErrStream(Context->getStrDump());
+ NaClBitcodeParser::ErrorAt(Level, Bit, Message);
+ setErrStream(OldErrStream);
+ }
if (Level >= naclbitc::Error &&
!Translator.getFlags().getAllowErrorRecovery())
Fatal();