Use a std::stringstream for Program's InfoLog.

This should help WebKit avoid needing to apply a local patch.
Also clean up the style in this file a bit.

BUG=angleproject:307,angleproject:992

Change-Id: I41ecf7cbfa20b469b3731215ef28cb36253ba186
Reviewed-on: https://chromium-review.googlesource.com/269849
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
diff --git a/src/libANGLE/Program.h b/src/libANGLE/Program.h
index aa40d93..6ed34f2 100644
--- a/src/libANGLE/Program.h
+++ b/src/libANGLE/Program.h
@@ -21,6 +21,7 @@
 #include <GLSLANG/ShaderLang.h>
 
 #include <vector>
+#include <sstream>
 #include <string>
 #include <set>
 
@@ -66,14 +67,14 @@
     InfoLog();
     ~InfoLog();
 
-    int getLength() const;
+    size_t getLength() const;
     void getLog(GLsizei bufSize, GLsizei *length, char *infoLog);
 
     void appendSanitized(const char *message);
     void append(const char *info, ...);
     void reset();
   private:
-    char *mInfoLog;
+    std::stringstream mStream;
 };
 
 // Struct used for correlating uniforms/elements of uniform arrays to handles