diff options
| author | Ilia Alshanetsky <iliaa@php.net> | 2007-01-03 03:55:29 +0000 |
|---|---|---|
| committer | Ilia Alshanetsky <iliaa@php.net> | 2007-01-03 03:55:29 +0000 |
| commit | b648434448a5aa936e43db7b239fa6d1ca2b0a7b (patch) | |
| tree | 56c0d244bb727efd456d87f99c3f84a7b75bb216 | |
| parent | 99affc0f998a1a5d2281d1f6174f0f99aa4a9961 (diff) | |
| download | php-git-b648434448a5aa936e43db7b239fa6d1ca2b0a7b.tar.gz | |
MFB:
Added filter callback
Unlink temporary file on error
| -rw-r--r-- | ext/fdf/fdf.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/ext/fdf/fdf.c b/ext/fdf/fdf.c index a65e56abe6..b8f14a8c61 100644 --- a/ext/fdf/fdf.c +++ b/ext/fdf/fdf.c @@ -1442,22 +1442,26 @@ SAPI_POST_HANDLER_FUNC(fdf_post_handler) if(nBytes>0) { err = FDFGetValue(theFDF, name, value, value_len-1, &nBytes); if(err == FDFErcOK && nBytes != 0) { + unsigned int new_val_len; + for(p=value;*p;p++) if(*p=='\r') *p='\n'; if(lastfieldname) efree(lastfieldname); - lastfieldname = estrdup(name); - php_register_variable(name, value, array_ptr TSRMLS_CC); + lastfieldname = estrdup(name); + + if (sapi_module.input_filter(PARSE_POST, name, &value, value_len - 1, &new_val_len TSRMLS_CC)) { + php_register_variable_safe(name, value, new_val_len, array_ptr TSRMLS_CC); + } } } } - FDFClose(theFDF); - VCWD_UNLINK((const char *)filename); - efree(filename); if(name) efree(name); if(value) efree(value); if(lastfieldname) efree(lastfieldname); } + VCWD_UNLINK((const char *)filename); + efree(filename); } /* }}} */ |
