Index: trunk/src/plug_footprint.c =================================================================== --- trunk/src/plug_footprint.c (revision 32870) +++ trunk/src/plug_footprint.c (revision 32871) @@ -176,7 +176,7 @@ res = malloc(sizeof(void *) * (len+1)); for(src = tags, dst = res; *src != NULL; src++, dst++) - *dst = rnd_strdup(*src); + *dst = *src; /* these are coming from the central hash, it is safe to keep them */ *dst = NULL; return res; Index: trunk/src/plug_io.c =================================================================== --- trunk/src/plug_io.c (revision 32870) +++ trunk/src/plug_io.c (revision 32871) @@ -1110,9 +1110,12 @@ void pcb_io_fp_map_free_fields(pcb_plug_fp_map_t *m) { +/* + Do NOTE free tag values, they are allocated by the central fp hash long n; for(n = 0; n < m->tags.used; n++) free(m->tags.array[n]); +*/ vts0_uninit(&m->tags); free(m->name); m->name = NULL;