Use a string format for safer printing.
The string was directly used as the string format, which would have caused
printf to expect additional arguments when it contains formatting elements.
Bug 18720257
Change-Id: Ie4391097e58d4cab2793a05eda2b03acd02d7f22
Reviewed-on: https://swiftshader-review.googlesource.com/2656
Reviewed-by: Greg Hartman <ghartman@google.com>
Tested-by: Greg Hartman <ghartman@google.com>
Reviewed-by: Nicolas Capens <capn@google.com>
diff --git a/src/OpenGL/libGL/Shader.cpp b/src/OpenGL/libGL/Shader.cpp
index a39e7ca..bb574a3 100644
--- a/src/OpenGL/libGL/Shader.cpp
+++ b/src/OpenGL/libGL/Shader.cpp
@@ -208,7 +208,7 @@
char buffer[256];
sprintf(buffer, "shader-input-%d-%d.txt", getName(), serial);
FILE *file = fopen(buffer, "wt");
- fprintf(file, mSource);
+ fprintf(file, "%s", mSource);
fclose(file);
getShader()->print("shader-output-%d-%d.txt", getName(), serial);
serial++;
diff --git a/src/OpenGL/libGLESv2/Shader.cpp b/src/OpenGL/libGLESv2/Shader.cpp
index 3a39ba2..81616c3 100644
--- a/src/OpenGL/libGLESv2/Shader.cpp
+++ b/src/OpenGL/libGLESv2/Shader.cpp
@@ -208,7 +208,7 @@
char buffer[256];
sprintf(buffer, "shader-input-%d-%d.txt", getName(), serial);
FILE *file = fopen(buffer, "wt");
- fprintf(file, mSource);
+ fprintf(file, "%s", mSource);
fclose(file);
getShader()->print("shader-output-%d-%d.txt", getName(), serial);
serial++;
diff --git a/src/Radiance/libRAD/Shader.cpp b/src/Radiance/libRAD/Shader.cpp
index 0b85533..155e237 100644
--- a/src/Radiance/libRAD/Shader.cpp
+++ b/src/Radiance/libRAD/Shader.cpp
@@ -387,7 +387,7 @@
char buffer[256];
sprintf(buffer, "vertex-input-%d-%d.txt", getName(), serial);
FILE *file = fopen(buffer, "wt");
- fprintf(file, mSource);
+ fprintf(file, "%s", mSource);
fclose(file);
vertexShader->print("vertex-output-%d-%d.txt", getName(), serial);
serial++;
@@ -472,7 +472,7 @@
char buffer[256];
sprintf(buffer, "pixel-input-%d-%d.txt", getName(), serial);
FILE *file = fopen(buffer, "wt");
- fprintf(file, mSource);
+ fprintf(file, "%s", mSource);
fclose(file);
pixelShader->print("pixel-output-%d-%d.txt", getName(), serial);
serial++;