hedgewars/uDebug.pas
branchqmlfrontend
changeset 11544 b69f5f22a3ba
parent 11403 b894922d58cc
parent 11532 bf86c6cb9341
child 12876 b544bbbd0696
equal deleted inserted replaced
11481:caa1e84c3ac2 11544:b69f5f22a3ba
    21 unit uDebug;
    21 unit uDebug;
    22 
    22 
    23 interface
    23 interface
    24 
    24 
    25 procedure OutError(Msg: shortstring; isFatalError: boolean);
    25 procedure OutError(Msg: shortstring; isFatalError: boolean);
    26 procedure TryDo(Assert: boolean; Msg: shortstring; isFatal: boolean); inline;
    26 //procedure TryDo(Assert: boolean; Msg: shortstring; isFatal: boolean); inline;
    27 procedure SDLTry(Assert: boolean; Msg: shortstring; isFatal: boolean);
    27 function checkFails(Assert: boolean; Msg: shortstring; isFatal: boolean): boolean;
       
    28 function SDLCheck(Assert: boolean; Msg: shortstring; isFatal: boolean): boolean;
       
    29 
       
    30 var
       
    31     allOK: boolean;
    28 
    32 
    29 implementation
    33 implementation
    30 uses SDLh, uConsole, uCommands, uConsts;
    34 uses SDLh, uConsole, uCommands, uConsts;
    31 
    35 
    32 procedure OutError(Msg: shortstring; isFatalError: boolean);
    36 procedure OutError(Msg: shortstring; isFatalError: boolean);
    40 begin
    44 begin
    41 if not Assert then
    45 if not Assert then
    42     OutError(Msg, isFatal)
    46     OutError(Msg, isFatal)
    43 end;
    47 end;
    44 
    48 
    45 procedure SDLTry(Assert: boolean; Msg: shortstring; isFatal: boolean);
    49 function checkFails(Assert: boolean; Msg: shortstring; isFatal: boolean): boolean;
       
    50 begin
       
    51     if not Assert then
       
    52         OutError(Msg, false);
       
    53 
       
    54     allOK:= allOK and (Assert or (not isFatal));
       
    55     checkFails:= (not Assert) and isFatal
       
    56 end;
       
    57 
       
    58 function SDLCheck(Assert: boolean; Msg: shortstring; isFatal: boolean): boolean;
    46 var s: shortstring;
    59 var s: shortstring;
    47 begin
    60 begin
    48 if not Assert then
    61     if not Assert then
    49     begin
    62     begin
    50     s:= SDL_GetError();
    63         s:= SDL_GetError();
    51     OutError(Msg + ': ' + s, isFatal)
    64         OutError(Msg + ': ' + s, false)
    52     end
    65     end;
       
    66 
       
    67     allOK:= allOK and (Assert or (not isFatal));
       
    68     SDLCheck:= (not Assert) and isFatal
    53 end;
    69 end;
    54 
    70 
    55 end.
    71 end.