diff options
Diffstat (limited to 'app/bin/drawgeom.c')
| -rw-r--r-- | app/bin/drawgeom.c | 13 | 
1 files changed, 7 insertions, 6 deletions
| diff --git a/app/bin/drawgeom.c b/app/bin/drawgeom.c index 6d4b237..2342599 100644 --- a/app/bin/drawgeom.c +++ b/app/bin/drawgeom.c @@ -65,7 +65,7 @@ static void EndPoly( drawContext_t * context, int cnt )  		ErrorMessage( MSG_POLY_SHAPES_3_SIDES );  		return;  	} -	pts = (coOrd*)MyMalloc( (cnt+1) * sizeof *(coOrd*)NULL ); +	pts = (coOrd*)MyMalloc( (cnt+1) * sizeof (coOrd) );  	for ( inx=0; inx<cnt; inx++ )  		pts[inx] = tempSegs(inx).u.l.pos[0];  	pts[cnt] = tempSegs(cnt-1).u.l.pos[1]; @@ -485,7 +485,7 @@ STATUS_T DrawGeomMouse(  			break;  		case OP_BOX:  		case OP_FILLBOX: -			pts = (coOrd*)MyMalloc( 4 * sizeof *(coOrd*)NULL ); +			pts = (coOrd*)MyMalloc( 4 * sizeof (coOrd) );  			for ( inx=0; inx<4; inx++ )  				pts[inx] = tempSegs(inx).u.l.pos[0];  			tempSegs(0).type = (context->Op == OP_FILLBOX)?SEG_FILPOLY:SEG_POLY; @@ -564,7 +564,7 @@ STATUS_T DrawGeomModify(  	static BOOL_T corner_mode;  	int inx, inx1, inx2;  	DIST_T d, d1, d2, dd; -	coOrd * newPts; +	coOrd * newPts = NULL;  	int mergePoints;  	tempSegs_da.cnt = 1;  	switch ( action ) { @@ -837,8 +837,9 @@ STATUS_T DrawGeomModify(  				}  				coOrd * oldPts = segPtr[segInx].u.p.pts; -				newPts = (coOrd*)MyMalloc( tempSegs(0).u.p.cnt * sizeof *(coOrd*)0 ); -				memcpy( newPts, segPtr[segInx].u.p.pts, (segPtr[segInx].u.p.cnt) * sizeof *(coOrd*)0 ); +				newPts = (coOrd*)MyMalloc( tempSegs(0).u.p.cnt * sizeof (coOrd) ); +				int size = segPtr[segInx].u.p.cnt; +				memcpy( newPts, segPtr[segInx].u.p.pts, (size) * sizeof (coOrd) );  				segPtr[segInx].u.p.pts = newPts;  				MyFree(oldPts); @@ -852,7 +853,7 @@ STATUS_T DrawGeomModify(  				pos = points(polyInx);  				if ( mergePoints ) { -					for (inx=polyInx+1; inx<points_da.cnt; inx++) +					for (inx=polyInx+1; inx<segPtr[segInx].u.p.cnt; inx++)  					segPtr[segInx].u.p.pts[inx-1] = segPtr[segInx].u.p.pts[inx];  					segPtr[segInx].u.p.cnt--;  /*fprintf( stderr, "Merging with vertix %d\n", polyInx );*/ | 
