This is a followup to https://cygwin.com/ml/cygwin/2018-05/msg00334.html.
In this patch series I attempt to implement the glibc extension clearenv(). I also implement glibc's notion of environ==NULL being shorthand for an empty environment. v2: In patch 2 I've tried harder to fix all the cases in which environ==NULL could be a problem. I did this by grepping the sources for 'cur_environ' and '__cygwin_environ', but it's still possible that I missed something. I've also incorporated the changes suggested by Corinna and Yaakov. Ken Brown (6): Cygwin: Clarify some code in environ.cc Cygwin: Allow the environment pointer to be NULL Cygwin: Implement the GNU extension clearenv Cygwin: Remove workaround in environ.cc Cygwin: Document clearenv and bump API minor Bump Cygwin DLL version to 2.11.0 winsup/cygwin/common.din | 1 + winsup/cygwin/environ.cc | 56 +++++++++++++++++++----- winsup/cygwin/include/cygwin/stdlib.h | 3 ++ winsup/cygwin/include/cygwin/version.h | 7 +-- winsup/cygwin/pinfo.cc | 7 +-- winsup/cygwin/release/{2.10.1 => 2.11.0} | 1 + winsup/doc/new-features.xml | 20 +++++++++ winsup/doc/posix.xml | 1 + 8 files changed, 80 insertions(+), 16 deletions(-) rename winsup/cygwin/release/{2.10.1 => 2.11.0} (97%) -- 2.17.0