void Asserter::failIf( bool shouldFail, std::string message, const SourceLine &sourceLine ) { failIf( shouldFail, Message( "assertion failed", message ), sourceLine ); }
static char* readFile(const char* path) { FILE* file = fopen(path, "r"); failIf(file == NULL, 66, "Could not open file \"%s\".\n", path); // Find out how big the file is. fseek(file, 0L, SEEK_END); size_t fileSize = ftell(file); rewind(file); // Allocate a buffer for it. char* buffer = malloc(fileSize + 1); failIf(buffer == NULL, 74, "Could not read file \"%s\".\n", path); // Read the entire file. size_t bytesRead = fread(buffer, sizeof(char), fileSize, file); failIf(bytesRead < fileSize, 74, "Could not read file \"%s\".\n", path); // Terminate the string. buffer[bytesRead] = '\0'; fclose(file); return buffer; }