diff -r d9d48143dcbe -r 984f9c76146d hedgewars/uRender.pas --- a/hedgewars/uRender.pas Tue May 03 19:08:27 2016 +0300 +++ b/hedgewars/uRender.pas Tue May 03 19:17:30 2016 +0300 @@ -104,7 +104,7 @@ implementation uses {$IFNDEF PAS2C} StrUtils, {$ENDIF}SysUtils, uVariables, uUtils, uConsts - {$IFDEF GL2}, uMatrix, uConsole{$ENDIF}; + {$IFDEF GL2}, uMatrix, uConsole{$ENDIF}, uPhysFSLayer, uDebug; {$IFDEF USE_TOUCH_INTERFACE} const @@ -256,7 +256,7 @@ function CompileShader(shaderFile: string; shaderType: GLenum): GLuint; var shader: GLuint; - f: Textfile; + f: PFSFile; source, line: AnsiString; sourceA: Pchar; lengthA: GLint; @@ -264,23 +264,17 @@ logLength: GLint; log: PChar; begin - Assign(f, PathPrefix + cPathz[ptShaders] + '/' + shaderFile); - filemode:= 0; // readonly - Reset(f); - if IOResult <> 0 then - begin - AddFileLog('Unable to load ' + shaderFile); - halt(HaltStartupError); - end; + f:= pfsOpenRead(cPathz[ptShaders] + '/' + shaderFile); + checkFails(f <> nil, 'Unable to load ' + shaderFile, true); source:=''; - while not eof(f) do + while not pfsEof(f) do begin - ReadLn(f, line); + pfsReadLnA(f, line); source:= source + line + #10; end; - Close(f); + pfsClose(f); WriteLnToConsole('Compiling shader: ' + PathPrefix + cPathz[ptShaders] + '/' + shaderFile);