Lines Matching refs:src
14 #include "src/core/SkBuffer.h"
15 #include "src/core/SkPathPriv.h"
16 #include "src/core/SkSafeMath.h"
141 const SkPathRef& src,
143 SkDEBUGCODE(src.validate();)
145 if (dst->get() != &src) {
146 src.ref();
147 dst->reset(const_cast<SkPathRef*>(&src));
155 // If dst and src are the same then we are about to drop our only ref on the common path
156 // ref. Some other thread may have owned src when we checked unique() above but it may not
158 if (dst->get() == &src) {
159 srcKeepAlive.reset(SkRef(&src));
164 if (dst->get() != &src) {
165 (*dst)->fVerbs = src.fVerbs;
166 (*dst)->fConicWeights = src.fConicWeights;
170 (*dst)->fPoints.setCount(src.fPoints.count());
172 matrix.mapPoints((*dst)->fPoints.begin(), src.fPoints.begin(), src.fPoints.count());
174 // Need to check this here in case (&src == dst)
175 bool canXformBounds = !src.fBoundsIsDirty && matrix.rectStaysRect() && src.countPoints() > 1;
189 if (src.fIsFinite) {
190 matrix.mapRect(&(*dst)->fBounds, src.fBounds);
202 (*dst)->fSegmentMask = src.fSegmentMask;
206 (*dst)->fIsOval = src.fIsOval && rectStaysRect;
207 (*dst)->fIsRRect = src.fIsRRect && rectStaysRect;
209 unsigned start = src.fRRectOrOvalStartIdx;
210 bool isCCW = SkToBool(src.fRRectOrOvalIsCCW);
216 if (dst->get() == &src) {