On Jan 11, 2008 10:23 PM, Larry Doolittle <[EMAIL PROTECTED]> wrote:
> --- /home/larry/cvs/pcb/src/polygon1.c  2008-01-11 09:46:24.000000000 -0800
> +++ pcb/src/polygon1.c  2008-01-11 10:18:07.000000000 -0800
> @@ -1947,9 +1947,10 @@
>      return;
>    for (cur = (*c)->head.prev; cur != &(*c)->head; free (cur->next))
>      cur = cur->prev;
> -  /* FIXME -- strict aliasing violation.  */
> -  if ((*c)->tree)
> -    r_destroy_tree ((rtree_t **) & ((*c)->tree));
> +  if ((*c)->tree) {
> +    rtree_t *r = (*c)->tree;
> +    r_destroy_tree (&r);
> +  }
>    free (*c), *c = NULL;
>
>  }

r_destroy_tree() will now set r to NULL, instead of (*c)->tree.
Luckily it's moot due to the following free(*c).


_______________________________________________
geda-dev mailing list
[email protected]
http://www.seul.org/cgi-bin/mailman/listinfo/geda-dev

Reply via email to