Skip to content

Commit

Permalink
Duplicate possibly persistent string in phar metadata clone
Browse files Browse the repository at this point in the history
  • Loading branch information
nikic committed Jul 20, 2021
1 parent b0d4d6e commit 9726bc6
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions ext/phar/phar.c
Original file line number Diff line number Diff line change
Expand Up @@ -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);
}
}
/* }}} */
Expand Down

0 comments on commit 9726bc6

Please sign in to comment.