Read the comment above. APR_XTHREAD can apply any time we need to share the same file across multiple threads. DuplicateHandle(), for an overlapped open, actually points at the same file. The only risk here is that if you make this change, you must also create a new, unique pOverlapped structure for the second apr_file_t, we cannot share the same pOverlapped object, we cannot duplicate an overlapped handle for non-overlapped access, so apr_file_dup(2) must be handled as a seperate overlapped object with a unique pOverlapped structure.
Bill
Yep, apr_file_dup is a big hole. Maybe I'll just leave the creation of the overlapped structure in read/write adn just make the change to the seek code. I'll let it stew in my brain over the weekend.
Bill