diff options
Diffstat (limited to 'tools/slang-generate/main.cpp')
| -rw-r--r-- | tools/slang-generate/main.cpp | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/tools/slang-generate/main.cpp b/tools/slang-generate/main.cpp index 700c1bb21..796bbd59d 100644 --- a/tools/slang-generate/main.cpp +++ b/tools/slang-generate/main.cpp @@ -690,37 +690,39 @@ void usage(char const* appName) fprintf(stderr, "usage: %s <input>\n", appName); } -SlangResult readAllText(char const * fileName, String& stringOut) +SlangResult readAllText(char const * fileName, String& outString) { - FILE * f; + FILE* f; fopen_s(&f, fileName, "rb"); if (!f) { - stringOut = ""; + outString = ""; return SLANG_FAIL; } else { - stringOut = fseek(f, 0, SEEK_END); auto size = ftell(f); StringRepresentation* stringRep = StringRepresentation::createWithCapacityAndLength(size, size); - stringOut = String(stringRep); + outString = String(stringRep); + + char* buffer = stringRep->getData(); + + // Seems unnecessary + //memset(buffer, 0, size); - char * buffer = stringRep->getData(); - memset(buffer, 0, size); fseek(f, 0, SEEK_SET); - fread(buffer, sizeof(char), size, f); + size_t readCount = fread(buffer, sizeof(char), size, f); fclose(f); - return SLANG_OK; + return (readCount == size) ? SLANG_OK : SLANG_FAIL; } } void writeAllText(char const *srcFileName, char const* fileName, const char* content) { - FILE * f = nullptr; + FILE* f = nullptr; fopen_s(&f, fileName, "wb"); if (!f) { |
