public synchronized void closePath()
	{
		// Don't double close path.
		if ((numSeg != 0) && (types[numSeg - 1] == PathIterator.SEG_CLOSE))
			return;

		// Only close path if the previous command wasn't a moveto
		if ((numSeg != 0) && (types[numSeg - 1] != PathIterator.SEG_MOVETO))
			path.closePath();

		makeRoom(0);
		types[numSeg++] = PathIterator.SEG_CLOSE;
		cx = mx;
		cy = my;
	}