diff --git a/pub/src/manip.cpp b/pub/src/manip.cpp index 5febd4ef1e9b605a320a3d9032e15b4deb46d74e..23e3029c3dbe5b2d7642d6d913cffc181c61323d 100644 --- a/pub/src/manip.cpp +++ b/pub/src/manip.cpp @@ -89,7 +89,7 @@ void NManip::PtsSelect( string del_or_ret ) fout.lDoc.push_back( "mp" + del_or_ret + " " + pSel ); fout.VS.clear(); - for (uint j=0; j<fin->VS.size(); j++) { + for ( uint j=0; j<fin->VS.size(); j++ ) { Sin = &(fin->VS[j]); Sout = *Sin; Sout.x.clear(); @@ -98,13 +98,16 @@ void NManip::PtsSelect( string del_or_ret ) pLis.evaluate( 0, Sin->size()-1 ); for (uint i=0; i<Sin->size(); i++) { if ( sel_del ^ pLis.contains(i) ) - Sout.push_xyd(Sin->x[i], Sin->y[i], Sin->dy[i]); + if( Sin->dy.size() ) + Sout.push_xyd( Sin->x[i], Sin->y[i], Sin->dy[i] ); + else + Sout.push_xy( Sin->x[i], Sin->y[i] ); } - if (Sout.size()) - fout.VS.push_back(Sout); + if ( Sout.size() ) + fout.VS.push_back( Sout ); } - if (fout.VS.size()) - NOlm::OloAdd(&fout); + if ( fout.VS.size() ) + NOlm::OloAdd( &fout ); else throw string( "no data point left" ); }