mirror of
https://github.com/php/php-src.git
synced 2025-01-22 19:54:13 +08:00
Merge branch 'PHP-7.4'
* PHP-7.4: Fix #66322: COMPersistHelper::SaveToFile can save to wrong location
This commit is contained in:
commit
e1a46de938
@ -394,7 +394,7 @@ CPH_METHOD(SaveToFile)
|
||||
RETURN_FALSE;
|
||||
}
|
||||
|
||||
olefilename = php_com_string_to_olestring(filename, strlen(fullpath), helper->codepage);
|
||||
olefilename = php_com_string_to_olestring(fullpath, strlen(fullpath), helper->codepage);
|
||||
efree(fullpath);
|
||||
}
|
||||
res = IPersistFile_Save(helper->ipf, olefilename, remember);
|
||||
|
24
ext/com_dotnet/tests/bug66322.phpt
Normal file
24
ext/com_dotnet/tests/bug66322.phpt
Normal file
@ -0,0 +1,24 @@
|
||||
--TEST--
|
||||
Bug #66322 (COMPersistHelper::SaveToFile can save to wrong location)
|
||||
--SKIPIF--
|
||||
<?php
|
||||
if (!extension_loaded('com_dotnet')) die('skip com_dotnet extension not available');
|
||||
try {
|
||||
new COM('Word.Application');
|
||||
} catch (com_exception $ex) {
|
||||
die('skip MS Word not available');
|
||||
}
|
||||
if (getenv("SKIP_SLOW_TESTS")) die('skip slow test');
|
||||
?>
|
||||
--FILE--
|
||||
<?php
|
||||
$w = new COM('Word.Application');
|
||||
$doc = $w->Documents->Add();
|
||||
$ph = new COMPersistHelper($doc);
|
||||
$filename = __DIR__ . '\\..\\' . basename(__DIR__) . '\\66322.docx';
|
||||
$ph->SaveToFile($filename);
|
||||
var_dump(file_exists($filename));
|
||||
$w->Quit();
|
||||
?>
|
||||
--EXPECT--
|
||||
bool(true)
|
Loading…
Reference in New Issue
Block a user