mirror of
https://github.com/thorvg/thorvg.git
synced 2025-06-08 05:33:36 +00:00
svg_loader: loc-- (#3149)
* svg_loader: loc-- Removed unnecessary initialization of variables to 0.0/false/nullptr in memory allocated by calloc.
This commit is contained in:
parent
758aa932d7
commit
56799beefd
1 changed files with 4 additions and 44 deletions
|
@ -1475,36 +1475,22 @@ static SvgNode* _createNode(SvgNode* parent, SvgNodeType type)
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
//Update the default value of stroke and fill
|
//Set the default values other than 0/false: https://www.w3.org/TR/SVGTiny12/painting.html#SpecifyingPaint
|
||||||
//https://www.w3.org/TR/SVGTiny12/painting.html#SpecifyingPaint
|
|
||||||
node->style->fill.paint.none = false;
|
|
||||||
//Default fill opacity is 1
|
|
||||||
node->style->fill.opacity = 255;
|
|
||||||
node->style->opacity = 255;
|
node->style->opacity = 255;
|
||||||
//Default current color is not set
|
|
||||||
node->style->fill.paint.curColor = false;
|
node->style->fill.opacity = 255;
|
||||||
node->style->curColorSet = false;
|
|
||||||
//Default fill rule is nonzero
|
|
||||||
node->style->fill.fillRule = FillRule::NonZero;
|
node->style->fill.fillRule = FillRule::NonZero;
|
||||||
|
|
||||||
//Default stroke is none
|
|
||||||
node->style->stroke.paint.none = true;
|
node->style->stroke.paint.none = true;
|
||||||
//Default stroke opacity is 1
|
|
||||||
node->style->stroke.opacity = 255;
|
node->style->stroke.opacity = 255;
|
||||||
//Default stroke current color is not set
|
|
||||||
node->style->stroke.paint.curColor = false;
|
|
||||||
//Default stroke width is 1
|
|
||||||
node->style->stroke.width = 1;
|
node->style->stroke.width = 1;
|
||||||
//Default line cap is butt
|
|
||||||
node->style->stroke.cap = StrokeCap::Butt;
|
node->style->stroke.cap = StrokeCap::Butt;
|
||||||
//Default line join is miter
|
|
||||||
node->style->stroke.join = StrokeJoin::Miter;
|
node->style->stroke.join = StrokeJoin::Miter;
|
||||||
node->style->stroke.miterlimit = 4.0f;
|
node->style->stroke.miterlimit = 4.0f;
|
||||||
node->style->stroke.scale = 1.0;
|
node->style->stroke.scale = 1.0;
|
||||||
|
|
||||||
node->style->paintOrder = _toPaintOrder("fill stroke");
|
node->style->paintOrder = _toPaintOrder("fill stroke");
|
||||||
|
|
||||||
//Default display is true("inline").
|
|
||||||
node->style->display = true;
|
node->style->display = true;
|
||||||
|
|
||||||
node->parent = parent;
|
node->parent = parent;
|
||||||
|
@ -1608,13 +1594,6 @@ static SvgNode* _createSymbolNode(SvgLoaderData* loader, SvgNode* parent, const
|
||||||
|
|
||||||
loader->svgParse->node->node.symbol.align = AspectRatioAlign::XMidYMid;
|
loader->svgParse->node->node.symbol.align = AspectRatioAlign::XMidYMid;
|
||||||
loader->svgParse->node->node.symbol.meetOrSlice = AspectRatioMeetOrSlice::Meet;
|
loader->svgParse->node->node.symbol.meetOrSlice = AspectRatioMeetOrSlice::Meet;
|
||||||
loader->svgParse->node->node.symbol.overflowVisible = false;
|
|
||||||
|
|
||||||
loader->svgParse->node->node.symbol.hasViewBox = false;
|
|
||||||
loader->svgParse->node->node.symbol.hasWidth = false;
|
|
||||||
loader->svgParse->node->node.symbol.hasHeight = false;
|
|
||||||
loader->svgParse->node->node.symbol.vx = 0.0f;
|
|
||||||
loader->svgParse->node->node.symbol.vy = 0.0f;
|
|
||||||
|
|
||||||
func(buf, bufLength, _attrParseSymbolNode, loader);
|
func(buf, bufLength, _attrParseSymbolNode, loader);
|
||||||
|
|
||||||
|
@ -1626,16 +1605,9 @@ static SvgNode* _createGaussianBlurNode(SvgLoaderData* loader, SvgNode* parent,
|
||||||
{
|
{
|
||||||
loader->svgParse->node = _createNode(parent, SvgNodeType::GaussianBlur);
|
loader->svgParse->node = _createNode(parent, SvgNodeType::GaussianBlur);
|
||||||
if (!loader->svgParse->node) return nullptr;
|
if (!loader->svgParse->node) return nullptr;
|
||||||
SvgGaussianBlurNode& gaussianBlur = loader->svgParse->node->node.gaussianBlur;
|
|
||||||
|
|
||||||
loader->svgParse->node->style->display = false;
|
loader->svgParse->node->style->display = false;
|
||||||
|
loader->svgParse->node->node.gaussianBlur.box = {0.0f, 0.0f, 1.0f, 1.0f};
|
||||||
gaussianBlur.stdDevX = 0.0f;
|
|
||||||
gaussianBlur.stdDevY = 0.0f;
|
|
||||||
gaussianBlur.box = {0.0f, 0.0f, 1.0f, 1.0f};
|
|
||||||
for (auto& p : gaussianBlur.isPercentage) p = false;
|
|
||||||
gaussianBlur.hasBox = false;
|
|
||||||
gaussianBlur.edgeModeWrap = false;
|
|
||||||
|
|
||||||
func(buf, bufLength, _attrParseGaussianBlurNode, loader);
|
func(buf, bufLength, _attrParseGaussianBlurNode, loader);
|
||||||
|
|
||||||
|
@ -1650,10 +1622,7 @@ static SvgNode* _createFilterNode(SvgLoaderData* loader, SvgNode* parent, const
|
||||||
SvgFilterNode& filter = loader->svgParse->node->node.filter;
|
SvgFilterNode& filter = loader->svgParse->node->node.filter;
|
||||||
|
|
||||||
loader->svgParse->node->style->display = false;
|
loader->svgParse->node->style->display = false;
|
||||||
|
|
||||||
filter.box = {-0.1f, -0.1f, 1.2f, 1.2f};
|
filter.box = {-0.1f, -0.1f, 1.2f, 1.2f};
|
||||||
for (auto& p : filter.isPercentage) p = false;
|
|
||||||
filter.filterUserSpace = false;
|
|
||||||
filter.primitiveUserSpace = true;
|
filter.primitiveUserSpace = true;
|
||||||
|
|
||||||
func(buf, bufLength, _attrParseFilterNode, loader);
|
func(buf, bufLength, _attrParseFilterNode, loader);
|
||||||
|
@ -1969,8 +1938,6 @@ static SvgNode* _createRectNode(SvgLoaderData* loader, SvgNode* parent, const ch
|
||||||
|
|
||||||
if (!loader->svgParse->node) return nullptr;
|
if (!loader->svgParse->node) return nullptr;
|
||||||
|
|
||||||
loader->svgParse->node->node.rect.hasRx = loader->svgParse->node->node.rect.hasRy = false;
|
|
||||||
|
|
||||||
func(buf, bufLength, _attrParseRectNode, loader);
|
func(buf, bufLength, _attrParseRectNode, loader);
|
||||||
return loader->svgParse->node;
|
return loader->svgParse->node;
|
||||||
}
|
}
|
||||||
|
@ -2228,9 +2195,6 @@ static SvgNode* _createUseNode(SvgLoaderData* loader, SvgNode* parent, const cha
|
||||||
|
|
||||||
if (!loader->svgParse->node) return nullptr;
|
if (!loader->svgParse->node) return nullptr;
|
||||||
|
|
||||||
loader->svgParse->node->node.use.isWidthSet = false;
|
|
||||||
loader->svgParse->node->node.use.isHeightSet = false;
|
|
||||||
|
|
||||||
func(buf, bufLength, _attrParseUseNode, loader);
|
func(buf, bufLength, _attrParseUseNode, loader);
|
||||||
return loader->svgParse->node;
|
return loader->svgParse->node;
|
||||||
}
|
}
|
||||||
|
@ -2298,8 +2262,6 @@ static SvgNode* _createTextNode(SvgLoaderData* loader, SvgNode* parent, const ch
|
||||||
|
|
||||||
//TODO: support the def font and size as used in a system?
|
//TODO: support the def font and size as used in a system?
|
||||||
loader->svgParse->node->node.text.fontSize = 10.0f;
|
loader->svgParse->node->node.text.fontSize = 10.0f;
|
||||||
loader->svgParse->node->node.text.fontFamily = nullptr;
|
|
||||||
loader->svgParse->node->node.text.text = nullptr;
|
|
||||||
|
|
||||||
func(buf, bufLength, _attrParseTextNode, loader);
|
func(buf, bufLength, _attrParseTextNode, loader);
|
||||||
|
|
||||||
|
@ -2637,7 +2599,6 @@ static SvgStyleGradient* _createRadialGradient(SvgLoaderData* loader, const char
|
||||||
|
|
||||||
grad->flags = SvgGradientFlags::None;
|
grad->flags = SvgGradientFlags::None;
|
||||||
grad->type = SvgGradientType::Radial;
|
grad->type = SvgGradientType::Radial;
|
||||||
grad->userSpace = false;
|
|
||||||
grad->radial = (SvgRadialGradient*)calloc(1, sizeof(SvgRadialGradient));
|
grad->radial = (SvgRadialGradient*)calloc(1, sizeof(SvgRadialGradient));
|
||||||
if (!grad->radial) {
|
if (!grad->radial) {
|
||||||
grad->clear();
|
grad->clear();
|
||||||
|
@ -2929,7 +2890,6 @@ static SvgStyleGradient* _createLinearGradient(SvgLoaderData* loader, const char
|
||||||
|
|
||||||
grad->flags = SvgGradientFlags::None;
|
grad->flags = SvgGradientFlags::None;
|
||||||
grad->type = SvgGradientType::Linear;
|
grad->type = SvgGradientType::Linear;
|
||||||
grad->userSpace = false;
|
|
||||||
grad->linear = (SvgLinearGradient*)calloc(1, sizeof(SvgLinearGradient));
|
grad->linear = (SvgLinearGradient*)calloc(1, sizeof(SvgLinearGradient));
|
||||||
if (!grad->linear) {
|
if (!grad->linear) {
|
||||||
grad->clear();
|
grad->clear();
|
||||||
|
|
Loading…
Add table
Reference in a new issue