bwaitstatus.inc 884 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. Function WEXITSTATUS(Status: longint): longint;
  2. begin
  3. Result:=(Status and $FF00) shr 8;
  4. end;
  5. Function WTERMSIG(Status: longint): longint;
  6. begin
  7. Result:=(Status and $7F);
  8. end;
  9. Function WSTOPSIG(Status: longint): longint;
  10. begin
  11. Result:=WEXITSTATUS(Status);
  12. end;
  13. Function WIFEXITED(Status: longint): Boolean;
  14. begin
  15. Result:=(WTERMSIG(Status)=0);
  16. end;
  17. Function WIFSIGNALED(Status: longint): Boolean;
  18. begin
  19. Result:=(not WIFSTOPPED(Status)) and (not WIFEXITED(Status));
  20. end;
  21. Function WIFSTOPPED(Status: longint): Boolean;
  22. begin
  23. Result:=((Status and $FF)=$7F);
  24. end;
  25. Function WCOREDUMP(Status: longint): Boolean;
  26. begin
  27. Result:=((Status and WCOREFLAG)<>0);
  28. end;
  29. Function W_EXITCODE(ReturnCode, Signal: longint): longint;
  30. begin
  31. Result:=(ReturnCode shl 8) or Signal;
  32. end;
  33. Function W_STOPCODE(Signal: longint): longint;
  34. begin
  35. Result:=(Signal shl 8) or $7F;
  36. end;