diff options
| author | Ilia Alshanetsky <iliaa@php.net> | 2007-01-03 03:55:07 +0000 |
|---|---|---|
| committer | Ilia Alshanetsky <iliaa@php.net> | 2007-01-03 03:55:07 +0000 |
| commit | b1cac0f72cb99f4f4b0128b0132f8909cb6f11c5 (patch) | |
| tree | 64cfb620175f95995138c871c539dbf77b27c385 | |
| parent | 8a806d186e048d8e7b632e09b30db4b32a4c4fe1 (diff) | |
| download | php-git-b1cac0f72cb99f4f4b0128b0132f8909cb6f11c5.tar.gz | |
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 773d851f67..e9ecc4d2eb 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); } /* }}} */ |
