Lines Matching refs:tracker
565 void phar_metadata_tracker_try_ensure_has_serialized_data(phar_metadata_tracker *tracker, int persi… in phar_metadata_tracker_try_ensure_has_serialized_data() argument
569 if (tracker->str || Z_ISUNDEF(tracker->val)) { in phar_metadata_tracker_try_ensure_has_serialized_data()
577 php_var_serialize(&metadata_str, &tracker->val, &metadata_hash); in phar_metadata_tracker_try_ensure_has_serialized_data()
582 tracker->str = metadata_str.s; in phar_metadata_tracker_try_ensure_has_serialized_data()
591 int phar_metadata_tracker_unserialize_or_copy(phar_metadata_tracker *tracker, zval *metadata, int p… in phar_metadata_tracker_unserialize_or_copy() argument
595 ZEND_ASSERT(!persistent || Z_ISUNDEF(tracker->val)); in phar_metadata_tracker_unserialize_or_copy()
597 if (Z_ISUNDEF(tracker->val) || has_unserialize_options) { in phar_metadata_tracker_unserialize_or_copy()
608 ZEND_ASSERT(tracker->str != NULL); in phar_metadata_tracker_unserialize_or_copy()
610 start = ZSTR_VAL(tracker->str); in phar_metadata_tracker_unserialize_or_copy()
612 …php_unserialize_with_options(metadata, start, ZSTR_LEN(tracker->str), unserialize_options, method_… in phar_metadata_tracker_unserialize_or_copy()
622 ZVAL_COPY(metadata, &tracker->val); in phar_metadata_tracker_unserialize_or_copy()
632 bool phar_metadata_tracker_has_data(const phar_metadata_tracker *tracker, int persistent) /* {{{ */ in phar_metadata_tracker_has_data() argument
634 ZEND_ASSERT(!persistent || Z_ISUNDEF(tracker->val)); in phar_metadata_tracker_has_data()
635 return !Z_ISUNDEF(tracker->val) || tracker->str != NULL; in phar_metadata_tracker_has_data()
642 void phar_metadata_tracker_free(phar_metadata_tracker *tracker, int persistent) /* {{{ */ in phar_metadata_tracker_free() argument
645 if (tracker->str) { in phar_metadata_tracker_free()
646 zend_string_release(tracker->str); in phar_metadata_tracker_free()
647 tracker->str = NULL; in phar_metadata_tracker_free()
649 if (!Z_ISUNDEF(tracker->val)) { in phar_metadata_tracker_free()
654 ZVAL_COPY_VALUE(&zval_copy, &tracker->val); in phar_metadata_tracker_free()
655 ZVAL_UNDEF(&tracker->val); in phar_metadata_tracker_free()
682 void phar_metadata_tracker_clone(phar_metadata_tracker *tracker) /* {{{ */ in phar_metadata_tracker_clone() argument
684 Z_TRY_ADDREF_P(&tracker->val); in phar_metadata_tracker_clone()
685 if (tracker->str) { in phar_metadata_tracker_clone()
687 tracker->str = zend_string_dup(tracker->str, false); in phar_metadata_tracker_clone()
700 void phar_parse_metadata_lazy(const char *buffer, phar_metadata_tracker *tracker, uint32_t zip_meta… in phar_parse_metadata_lazy() argument
702 phar_metadata_tracker_free(tracker, persistent); in phar_parse_metadata_lazy()
705 tracker->str = zend_string_init(buffer, zip_metadata_len, persistent); in phar_parse_metadata_lazy()