Joe Orton wrote:
On Wed, Sep 08, 2004 at 06:18:49PM -0400, Stas Bekman wrote:
But normally apr_strerror(500, buf, 256) returns "not specified error"
string or something like that, which is cool. Why does it segfault is what
I can't understand. Notice that it doesn't happen on linux.
strerror(500) will return NULL on Solaris which APR does not expect (and
the standards seem to say is wrong behaviour too for what that's worth).
Excellent, Joe. Will it make into 2.0.51?
This patch should fix the issue, thanks for the report:
Index: errorcodes.c
===================================================================
RCS file: /home/cvs/apr/misc/unix/errorcodes.c,v
retrieving revision 1.55.2.2
diff -u -r1.55.2.2 errorcodes.c
--- errorcodes.c 13 Feb 2004 09:33:49 -0000 1.55.2.2
+++ errorcodes.c 9 Sep 2004 08:11:32 -0000
@@ -372,7 +372,13 @@
sprintf(err, "Native Error #%d", statcode);
return stuffbuffer(buf, bufsize, err);
#else
- return stuffbuffer(buf, bufsize, strerror(statcode));
+ const char *err = strerror(statcode);
+ if (err) {
+ return stuffbuffer(buf, bufsize, err);
+ } else {
+ return stuffbuffer(buf, bufsize,
+ "APR does not understand this error code");
+ }
#endif
}
#endif
--
__________________________________________________________________
Stas Bekman JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/ mod_perl Guide ---> http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org http://ticketmaster.com
--
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html