Lines Matching defs:new_expr
1787 struct metric_expr *old_expr, *new_expr;
1806 new_expr = malloc(sizeof(*new_expr));
1807 if (!new_expr)
1810 new_expr->metric_expr = old_expr->metric_expr;
1811 new_expr->metric_threshold = old_expr->metric_threshold;
1812 new_expr->metric_name = strdup(old_expr->metric_name);
1813 if (!new_expr->metric_name)
1816 new_expr->metric_unit = old_expr->metric_unit;
1817 new_expr->runtime = old_expr->runtime;
1823 alloc_size = sizeof(*new_expr->metric_refs);
1824 new_expr->metric_refs = calloc(nr + 1, alloc_size);
1825 if (!new_expr->metric_refs) {
1826 free(new_expr);
1830 memcpy(new_expr->metric_refs, old_expr->metric_refs,
1833 new_expr->metric_refs = NULL;
1839 alloc_size = sizeof(*new_expr->metric_events);
1840 new_expr->metric_events = calloc(nr + 1, alloc_size);
1841 if (!new_expr->metric_events) {
1842 zfree(&new_expr->metric_refs);
1843 free(new_expr);
1852 zfree(&new_expr->metric_events);
1853 zfree(&new_expr->metric_refs);
1854 free(new_expr);
1857 new_expr->metric_events[idx] = evsel;
1860 list_add(&new_expr->nd, &new_me->head);