On Sun, 2007-11-11 at 10:36 +0100, Werner Hoch wrote:
> On Sonntag, 11. November 2007, Werner Hoch wrote:
> > The edit-copy command calls the get command once when placing the
> > copy.
> 
> Forgot two tell that the get command is called once for every symbol in 
> the selection. Copying of 5 symbols creates 5 get command calls.

Urg... I see where this comes from....

o_complex_basic.c: o_complex_copy()

  clib = s_clib_get_symbol_by_name (o_current->complex_basename);

  new_obj = o_complex_add(toplevel, list_tail, NULL, o_current->type, color,
                          o_current->complex->x, o_current->complex->y, 
                          o_current->complex->angle, 
                          o_current->complex->mirror,
                          clib, o_current->complex_basename, 
                          selectable, FALSE); 

  o_attrib_slot_copy(toplevel, o_current, new_obj);


The o_complex_copy_embedded() code is actually nearer to correct. I
smell a refactor coming along..


Thanks for the detailed debugging information. I suspect the multiple
calls at place time are due in part to the above code too.

Good catch!

Best wishes,

-- 
Peter Clifton

Electrical Engineering Division,
Engineering Department,
University of Cambridge,
9, JJ Thomson Avenue,
Cambridge
CB3 0FA

Tel: +44 (0)7729 980173 - (No signal in the lab!)



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

Reply via email to