]> granicus.if.org Git - php/commitdiff
MFB:
authorIlia Alshanetsky <iliaa@php.net>
Wed, 3 Jan 2007 03:55:29 +0000 (03:55 +0000)
committerIlia Alshanetsky <iliaa@php.net>
Wed, 3 Jan 2007 03:55:29 +0000 (03:55 +0000)
Added filter callback
Unlink temporary file on error

ext/fdf/fdf.c

index a65e56abe6bfc2bc902f4012017280888a866641..b8f14a8c6147904be28965ec4117c5b9e22d9367 100644 (file)
@@ -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);
 }
 /* }}} */