Mercurial > hg > nginx
changeset 1703:43747661804d
*) copy regex captures $1, $2, etc.
*) SV flags debug logging
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Sun, 09 Dec 2007 20:52:14 +0000 |
parents | 86bb52e28ce0 |
children | e584e946e198 |
files | src/http/modules/perl/nginx.xs |
diffstat | 1 files changed, 9 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/http/modules/perl/nginx.xs +++ b/src/http/modules/perl/nginx.xs @@ -42,8 +42,12 @@ ngx_http_perl_sv2str(pTHX_ ngx_http_requ s->len = len; - if (SvREADONLY(sv)) { + if (SvREADONLY(sv) && SvPOK(sv)) { s->data = p; + + ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, + "perl sv2str: %08XD \"%V\"", sv->sv_flags, s); + return NGX_OK; } @@ -54,6 +58,9 @@ ngx_http_perl_sv2str(pTHX_ ngx_http_requ ngx_memcpy(s->data, p, len); + ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, + "perl sv2str: %08XD \"%V\"", sv->sv_flags, s); + return NGX_OK; } @@ -532,7 +539,7 @@ print(r, ...) sv = SvRV(sv); } - if (SvREADONLY(sv)) { + if (SvREADONLY(sv) && SvPOK(sv)) { p = (u_char *) SvPV(sv, len);