| 178 | } |
| 179 | |
| 180 | long __cdecl lseek(int f, long offset, int origin) |
| 181 | { |
| 182 | HANDLE p = get_file_handle(f); |
| 183 | DWORD fpos; |
| 184 | switch (origin) { |
| 185 | case SEEK_SET: |
| 186 | fpos = SetFilePointer(p, offset, NULL, FILE_BEGIN); |
| 187 | break; |
| 188 | case SEEK_CUR: |
| 189 | fpos = SetFilePointer(p, offset, NULL, FILE_CURRENT); |
| 190 | break; |
| 191 | case SEEK_END: |
| 192 | fpos = SetFilePointer(p, offset, NULL, FILE_END); |
| 193 | break; |
| 194 | default: |
| 195 | fpos = 0xFFFFFFFF; |
| 196 | break; |
| 197 | } |
| 198 | if (fpos == 0xFFFFFFFF) |
| 199 | return -1; |
| 200 | else |
| 201 | return (long) fpos; |
| 202 | } |
| 203 | |
| 204 | int __cdecl open(const char *filename, int oflag, ...) |
| 205 | { |
no test coverage detected