Thanks for the fix. I saw some discussion on IRC -- are there outstanding problems not addressed by the below commit?
On Mon, Jan 16, 2012, at 18:08, ne...@apache.org wrote: > Author: neels > Date: Mon Jan 16 18:08:13 2012 > New Revision: 1232085 > > URL: http://svn.apache.org/viewvc?rev=1232085&view=rev > Log: > * contrib/server-side/mod_setlocale/mod_setlocale.c > (setlocale_post_config): Disallow a set_ctype of NULL, use "" instead. > Found by: philip > > Modified: > subversion/trunk/contrib/server-side/mod_setlocale/mod_setlocale.c > > Modified: subversion/trunk/contrib/server-side/mod_setlocale/mod_setlocale.c > URL: > http://svn.apache.org/viewvc/subversion/trunk/contrib/server-side/mod_setlocale/mod_setlocale.c?rev=1232085&r1=1232084&r2=1232085&view=diff > ============================================================================== > --- subversion/trunk/contrib/server-side/mod_setlocale/mod_setlocale.c > (original) > +++ subversion/trunk/contrib/server-side/mod_setlocale/mod_setlocale.c Mon > Jan 16 18:08:13 2012 > @@ -86,6 +86,16 @@ setlocale_post_config(apr_pool_t *pconf, > return HTTP_INTERNAL_SERVER_ERROR; > } > > + /* If the user omitted a configuration directive, then set_ctype will be > + * NULL. Below condition sets it to "" instead, which loads the default as > + * determined by the environment. httpd's env is typically set by > + * /etc/apache2/envvars, where LANG defaults to 'C', but it can be set to > + * the system default there by sourcing the system's config file (e.g. '. > + * /etc/default/locale'). Then, it suffices to just load this module to > + * obtain the system's default locale. */ > + if (cfg->set_ctype == NULL) > + cfg->set_ctype = ""; > + > cfg->old_ctype = setlocale(LC_CTYPE, cfg->set_ctype); > if (cfg->old_ctype) > { > > >