# HG changeset patch # User jwe # Date 1091809280 0 # Node ID 4cf211c831585ee9dd964f1887655b65a87e1724 # Parent e63617efbd3f968e01313c673b24845f7ff518ed [project @ 2004-08-06 16:21:20 by jwe] diff -r e63617efbd3f -r 4cf211c83158 src/oct-map.cc --- a/src/oct-map.cc Fri Aug 06 16:18:18 2004 +0000 +++ b/src/oct-map.cc Fri Aug 06 16:21:20 2004 +0000 @@ -116,25 +116,27 @@ Octave_map concat (const Octave_map& ra, const Octave_map& rb, const Array& ra_idx) { - if (ra.length() != rb.length()) - { - error ("field name mismatch in structure concatenation"); - return Octave_map (); - } + Octave_map retval; - Octave_map retval; - for (Octave_map::const_iterator pa = ra.begin (); pa != ra.end (); pa++) + if (ra.length() == rb.length()) { - Octave_map::const_iterator pb = rb.seek (ra.key(pa)); - if (pa == rb.end()) + for (Octave_map::const_iterator pa = ra.begin (); pa != ra.end (); pa++) { - error ("field name mismatch in structure concatenation"); - return Octave_map (); - } + Octave_map::const_iterator pb = rb.seek (ra.key(pa)); + + if (pa == rb.end ()) + { + error ("field name mismatch in structure concatenation"); + break; + } - retval.assign (ra.key(pa), ra.contents(pa).insert(rb.contents(pb), - ra_idx)); + retval.assign (ra.key(pa), + ra.contents(pa).insert (rb.contents(pb), ra_idx)); + } } + else + error ("field name mismatch in structure concatenation"); + return retval; }