]> pd.if.org Git - pdclib/blob - functions/stdio/ftrylockfile.c
PDCLIB-15 PDCLIB-16:
[pdclib] / functions / stdio / ftrylockfile.c
1 /* ftrylockfile(FILE * )\r
2 \r
3    This file is part of the Public Domain C Library (PDCLib).\r
4    Permission is granted to use, modify, and / or redistribute at will.\r
5 */\r
6 \r
7 #include <stdio.h>\r
8 #include <stdarg.h>\r
9 \r
10 #ifndef REGTEST\r
11 #include <threads.h>\r
12 #include <stdlib.h>\r
13 \r
14 int ftrylockfile( FILE * file )\r
15 {\r
16     int res = mtx_trylock( &file->lock );\r
17     switch(res) {\r
18         case thrd_success:\r
19             return 0;\r
20         case thrd_busy:\r
21             return 1;\r
22 \r
23         default:\r
24             abort();\r
25     }\r
26 }\r
27 \r
28 #endif\r
29 \r
30 #ifdef TEST\r
31 #include <_PDCLIB_test.h>\r
32 \r
33 int main( void )\r
34 {\r
35     // Not tested here - tested by other stdio test drivers\r
36     return TEST_RESULTS;\r
37 }\r
38 \r
39 #endif\r