gdiplus: Always create path gradient brushes with blend positions.
This commit is contained in:
parent
0178093576
commit
4c93f9f880
|
@ -574,12 +574,15 @@ GpStatus WINGDIPAPI GdipCreatePathGradient(GDIPCONST GpPointF* points,
|
||||||
if (!*grad) return OutOfMemory;
|
if (!*grad) return OutOfMemory;
|
||||||
|
|
||||||
(*grad)->blendfac = GdipAlloc(sizeof(REAL));
|
(*grad)->blendfac = GdipAlloc(sizeof(REAL));
|
||||||
if(!(*grad)->blendfac){
|
(*grad)->blendpos = GdipAlloc(sizeof(REAL));
|
||||||
|
if(!(*grad)->blendfac || !(*grad)->blendpos){
|
||||||
|
GdipFree((*grad)->blendfac);
|
||||||
|
GdipFree((*grad)->blendpos);
|
||||||
GdipFree(*grad);
|
GdipFree(*grad);
|
||||||
return OutOfMemory;
|
return OutOfMemory;
|
||||||
}
|
}
|
||||||
(*grad)->blendfac[0] = 1.0;
|
(*grad)->blendfac[0] = 1.0;
|
||||||
(*grad)->blendpos = NULL;
|
(*grad)->blendpos[0] = 1.0;
|
||||||
(*grad)->blendcount = 1;
|
(*grad)->blendcount = 1;
|
||||||
|
|
||||||
(*grad)->pathdata.Count = count;
|
(*grad)->pathdata.Count = count;
|
||||||
|
@ -664,12 +667,15 @@ GpStatus WINGDIPAPI GdipCreatePathGradientFromPath(GDIPCONST GpPath* path,
|
||||||
if (!*grad) return OutOfMemory;
|
if (!*grad) return OutOfMemory;
|
||||||
|
|
||||||
(*grad)->blendfac = GdipAlloc(sizeof(REAL));
|
(*grad)->blendfac = GdipAlloc(sizeof(REAL));
|
||||||
if(!(*grad)->blendfac){
|
(*grad)->blendpos = GdipAlloc(sizeof(REAL));
|
||||||
|
if(!(*grad)->blendfac || !(*grad)->blendpos){
|
||||||
|
GdipFree((*grad)->blendfac);
|
||||||
|
GdipFree((*grad)->blendpos);
|
||||||
GdipFree(*grad);
|
GdipFree(*grad);
|
||||||
return OutOfMemory;
|
return OutOfMemory;
|
||||||
}
|
}
|
||||||
(*grad)->blendfac[0] = 1.0;
|
(*grad)->blendfac[0] = 1.0;
|
||||||
(*grad)->blendpos = NULL;
|
(*grad)->blendpos[0] = 1.0;
|
||||||
(*grad)->blendcount = 1;
|
(*grad)->blendcount = 1;
|
||||||
|
|
||||||
(*grad)->pathdata.Count = path->pathdata.Count;
|
(*grad)->pathdata.Count = path->pathdata.Count;
|
||||||
|
|
Loading…
Reference in New Issue