nobbie Tue Jul 1 09:27:03 2003 EDT Modified files: /php-src/ext/informix ifx.ec Log: - MFB: 1.69.2.18 Index: php-src/ext/informix/ifx.ec diff -u php-src/ext/informix/ifx.ec:1.93 php-src/ext/informix/ifx.ec:1.94 --- php-src/ext/informix/ifx.ec:1.93 Tue Jul 1 07:09:10 2003 +++ php-src/ext/informix/ifx.ec Tue Jul 1 09:27:03 2003 @@ -21,7 +21,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: ifx.ec,v 1.93 2003/07/01 11:09:10 nobbie Exp $ */ +/* $Id: ifx.ec,v 1.94 2003/07/01 13:27:03 nobbie Exp $ */ /* ------------------------------------------------------------------- * if you want a function reference : "grep '^\*\*' ifx.ec" will give @@ -3043,20 +3043,20 @@ if (*param && param != "") { - char *filename; - - if (Ifx_blob->BLOB.blob_data.loc_fname != NULL) { - unlink(Ifx_blob->BLOB.blob_data.loc_fname); - efree(Ifx_blob->BLOB.blob_data.loc_fname); - } - if ((filename = emalloc(len + 1)) == NULL) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Can't create blob-resource"); - return -1; - } - memcpy(filename, param, len); - filename[len] = 0; - Ifx_blob->BLOB.blob_data.loc_fname = filename; - Ifx_blob->BLOB.blob_data.loc_size = -1; + /* + * copy the filename in param to filename in loc_fname + * otherwise we'll unlink non-temporary files + * + * loc_fname gets filled by php_intifx_init_blob_infile + */ + + if (Ifx_blob->BLOB.blob_data.loc_fname != NULL) { + if (php_copy_file(param, Ifx_blob->BLOB.blob_data.loc_fname TSRMLS_CC) == FAILURE) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Can't create blob-resource file. File copy failed: %s", param); + return -1; + } + Ifx_blob->BLOB.blob_data.loc_size = -1; + } } }
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php