You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl-cvs@perl.apache.org by st...@apache.org on 2005/02/19 04:07:58 UTC

svn commit: r154385 - perl/modperl/trunk/todo/release

Author: stas
Date: Fri Feb 18 19:07:58 2005
New Revision: 154385

URL: http://svn.apache.org/viewcvs?view=rev&rev=154385
Log:
new bugs

Modified:
    perl/modperl/trunk/todo/release

Modified: perl/modperl/trunk/todo/release
URL: http://svn.apache.org/viewcvs/perl/modperl/trunk/todo/release?view=diff&r1=154384&r2=154385
==============================================================================
--- perl/modperl/trunk/todo/release (original)
+++ perl/modperl/trunk/todo/release Fri Feb 18 19:07:58 2005
@@ -4,3 +4,17 @@
 
 -- see also todo/api_status
 -- see also todo/release-checklist
+
+* need to review all the API methods that set string values
+ (e.g. server_admin) they all assign a pointer to the PV slot in the
+ perl scalar and if that scalar goes out of scope or changes, the
+ modified data will get corrupted. need to replace 
+   val = (char *)SvPV_nolen(...);
+ with:
+   val = apr_pstrdup(pool, (char *)SvPV_nolen(...));
+but the problem with what pool is used is very delicate, for $s
+methods it must be $s->pool and for $r methods, $r->pool, but some $r
+methods try to modify server strings. like document_root, which I've
+started to fix, but it's still broken (not sure what pool should be
+used, $s->pool will mean a memory leak, $r->pool will still mean a
+corrupted data).