Duplicate possibly persistent string in phar metadata clone

This commit is contained in:
Nikita Popov 2021-07-20 15:36:38 +02:00
parent b0d4d6ebb4
commit 9726bc6977

View File

@ -688,13 +688,14 @@ void phar_metadata_tracker_copy(phar_metadata_tracker *dest, const phar_metadata
/* }}} */
/**
* Increment reference counts after a metadata entry was copied
* Copy constructor for a non-persistent clone.
*/
void phar_metadata_tracker_clone(phar_metadata_tracker *tracker) /* {{{ */
{
Z_TRY_ADDREF_P(&tracker->val);
if (tracker->str) {
tracker->str = zend_string_copy(tracker->str);
/* Duplicate the string, as the original may have been persistent. */
tracker->str = zend_string_dup(tracker->str, false);
}
}
/* }}} */