OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*******************************************************************************/
-#include "php_psi_stdinc.h"
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#else
+# include "php_config.h"
+#endif
#include "data.h"
-struct psi_impl_type *psi_impl_type_init(token_t type, const char *name)
+struct psi_impl_type *psi_impl_type_init(token_t type, zend_string *name)
{
- struct psi_impl_type *t = calloc(1, sizeof(*t));
+ struct psi_impl_type *t = pecalloc(1, sizeof(*t), 1);
t->type = type;
- t->name = strdup(name);
+ t->name = zend_string_copy(name);
return t;
}
+void psi_impl_type_dump(struct psi_dump *dump, struct psi_impl_type *type)
+{
+ PSI_DUMP(dump, "%s", type->name->val);
+}
+
void psi_impl_type_free(struct psi_impl_type **type_ptr)
{
if (*type_ptr) {
struct psi_impl_type *type = *type_ptr;
*type_ptr = NULL;
- if (type->token) {
- free(type->token);
- }
- free(type->name);
+ psi_token_free(&type->token);
+ zend_string_release(type->name);
free(type);
}
}