> On Dec. 10, 2015, 4:12 a.m., Joris Van Remoortere wrote: > > 3rdparty/libprocess/3rdparty/stout/include/stout/os/windows/rmdir.hpp, line > > 109 > > <https://reviews.apache.org/r/39584/diff/7/?file=1125983#file1125983line109> > > > > Can you explain / comment why here (as well as on L139) we use > > `ErrnoError`, yet elsewhere we use `WindowsError`?
`errno` captures errors that have happened in the C standard library, and `ErrnoError` captures those errors and their messages and lifts them into an `Error` type. For Windows API functions (which, of course, are not a part of the C standard library) have their own `errno`-like error reporting mechanism, called `GetLastError()`. `WindowsError` captures these errors and lifts them into an `Error` type. Thus, when we call Windows API functions, we capture errors with `WindowsError`, and when we call C standard library functions, we capture errors with `ErrnoError`. Does that make sense? - Alex ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/39584/#review109681 ----------------------------------------------------------- On Nov. 16, 2015, 9:13 a.m., Alex Clemmer wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/39584/ > ----------------------------------------------------------- > > (Updated Nov. 16, 2015, 9:13 a.m.) > > > Review request for mesos, Artem Harutyunyan, Joris Van Remoortere, and Joseph > Wu. > > > Repository: mesos > > > Description > ------- > > Windows: Implemented `os::rmdir.hpp`. > > > Diffs > ----- > > 3rdparty/libprocess/3rdparty/stout/include/Makefile.am > a8c35c086ecae21701f6a720f25231c1b0d4e329 > 3rdparty/libprocess/3rdparty/stout/include/stout/os.hpp > 5c1df81193b4b888d2ed5c7dbfa0b5e2fae48467 > 3rdparty/libprocess/3rdparty/stout/include/stout/os/posix/rmdir.hpp > PRE-CREATION > 3rdparty/libprocess/3rdparty/stout/include/stout/os/rmdir.hpp PRE-CREATION > 3rdparty/libprocess/3rdparty/stout/include/stout/os/windows/rmdir.hpp > PRE-CREATION > 3rdparty/libprocess/3rdparty/stout/include/stout/posix/os.hpp > e26df59d9b837e1f4a4b92577f0a3de4b9076cb4 > 3rdparty/libprocess/3rdparty/stout/include/stout/windows/os.hpp > edf17d5ad8efbc988e909bfb8ffa5a015ecdc89d > > Diff: https://reviews.apache.org/r/39584/diff/ > > > Testing > ------- > > `make check` from autotools on Ubuntu 15. > `make check` from CMake on OS X 10.10. > Ran `check` project in VS on Windows 10. > > > Thanks, > > Alex Clemmer > >