mirror of
https://github.com/thorvg/thorvg.git
synced 2025-06-16 04:54:39 +00:00
common: Refactoring incorrectly declared loop variable
Loop variables should be declared in the minimal possible scope thorvg prefers to declare when using local variables.
This commit is contained in:
parent
08c37978a9
commit
c819754056
2 changed files with 20 additions and 35 deletions
|
@ -445,7 +445,7 @@ static constexpr struct
|
||||||
|
|
||||||
static void _toColor(const char* str, uint8_t* r, uint8_t* g, uint8_t* b, string** ref)
|
static void _toColor(const char* str, uint8_t* r, uint8_t* g, uint8_t* b, string** ref)
|
||||||
{
|
{
|
||||||
unsigned int i, len = strlen(str);
|
unsigned int len = strlen(str);
|
||||||
char *red, *green, *blue;
|
char *red, *green, *blue;
|
||||||
unsigned char tr, tg, tb;
|
unsigned char tr, tg, tb;
|
||||||
|
|
||||||
|
@ -493,7 +493,7 @@ static void _toColor(const char* str, uint8_t* r, uint8_t* g, uint8_t* b, string
|
||||||
*ref = _idFromUrl((const char*)(str + 3));
|
*ref = _idFromUrl((const char*)(str + 3));
|
||||||
} else {
|
} else {
|
||||||
//Handle named color
|
//Handle named color
|
||||||
for (i = 0; i < (sizeof(colors) / sizeof(colors[0])); i++) {
|
for (unsigned int i = 0; i < (sizeof(colors) / sizeof(colors[0])); i++) {
|
||||||
if (!strcasecmp(colors[i].name, str)) {
|
if (!strcasecmp(colors[i].name, str)) {
|
||||||
*r = (((uint8_t*)(&(colors[i].value)))[2]);
|
*r = (((uint8_t*)(&(colors[i].value)))[2]);
|
||||||
*g = (((uint8_t*)(&(colors[i].value)))[1]);
|
*g = (((uint8_t*)(&(colors[i].value)))[1]);
|
||||||
|
@ -590,7 +590,6 @@ static void _matrixCompose(const Matrix* m1,
|
||||||
*/
|
*/
|
||||||
static Matrix* _parseTransformationMatrix(const char* value)
|
static Matrix* _parseTransformationMatrix(const char* value)
|
||||||
{
|
{
|
||||||
unsigned int i;
|
|
||||||
float points[8];
|
float points[8];
|
||||||
int ptCount = 0;
|
int ptCount = 0;
|
||||||
float sx, sy;
|
float sx, sy;
|
||||||
|
@ -606,7 +605,7 @@ static Matrix* _parseTransformationMatrix(const char* value)
|
||||||
++str;
|
++str;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
for (i = 0; i < sizeof(matrixTags) / sizeof(matrixTags[0]); i++) {
|
for (unsigned int i = 0; i < sizeof(matrixTags) / sizeof(matrixTags[0]); i++) {
|
||||||
if (!strncmp(matrixTags[i].tag, str, matrixTags[i].sz - 1)) {
|
if (!strncmp(matrixTags[i].tag, str, matrixTags[i].sz - 1)) {
|
||||||
state = matrixTags[i].state;
|
state = matrixTags[i].state;
|
||||||
str += (matrixTags[i].sz - 1);
|
str += (matrixTags[i].sz - 1);
|
||||||
|
@ -702,12 +701,11 @@ static constexpr struct
|
||||||
|
|
||||||
static float _parseLength(const char* str, SvgLengthType* type)
|
static float _parseLength(const char* str, SvgLengthType* type)
|
||||||
{
|
{
|
||||||
unsigned int i;
|
|
||||||
float value;
|
float value;
|
||||||
int sz = strlen(str);
|
int sz = strlen(str);
|
||||||
|
|
||||||
*type = SvgLengthType::Px;
|
*type = SvgLengthType::Px;
|
||||||
for (i = 0; i < sizeof(lengthTags) / sizeof(lengthTags[0]); i++) {
|
for (unsigned int i = 0; i < sizeof(lengthTags) / sizeof(lengthTags[0]); i++) {
|
||||||
if (lengthTags[i].sz - 1 == sz && !strncmp(lengthTags[i].tag, str, sz)) *type = lengthTags[i].type;
|
if (lengthTags[i].sz - 1 == sz && !strncmp(lengthTags[i].tag, str, sz)) *type = lengthTags[i].type;
|
||||||
}
|
}
|
||||||
value = strtof(str, nullptr);
|
value = strtof(str, nullptr);
|
||||||
|
@ -913,7 +911,6 @@ static bool _parseStyleAttr(void* data, const char* key, const char* value)
|
||||||
{
|
{
|
||||||
SvgLoaderData* loader = (SvgLoaderData*)data;
|
SvgLoaderData* loader = (SvgLoaderData*)data;
|
||||||
SvgNode* node = loader->svgParse->node;
|
SvgNode* node = loader->svgParse->node;
|
||||||
unsigned int i;
|
|
||||||
int sz;
|
int sz;
|
||||||
if (!key || !value) return false;
|
if (!key || !value) return false;
|
||||||
|
|
||||||
|
@ -923,7 +920,7 @@ static bool _parseStyleAttr(void* data, const char* key, const char* value)
|
||||||
value = _skipSpace(value, nullptr);
|
value = _skipSpace(value, nullptr);
|
||||||
|
|
||||||
sz = strlen(key);
|
sz = strlen(key);
|
||||||
for (i = 0; i < sizeof(styleTags) / sizeof(styleTags[0]); i++) {
|
for (unsigned int i = 0; i < sizeof(styleTags) / sizeof(styleTags[0]); i++) {
|
||||||
if (styleTags[i].sz - 1 == sz && !strncmp(styleTags[i].tag, key, sz)) {
|
if (styleTags[i].sz - 1 == sz && !strncmp(styleTags[i].tag, key, sz)) {
|
||||||
styleTags[i].tagHandler(loader, node, value);
|
styleTags[i].tagHandler(loader, node, value);
|
||||||
return true;
|
return true;
|
||||||
|
@ -1137,12 +1134,11 @@ static bool _attrParseCircleNode(void* data, const char* key, const char* value)
|
||||||
SvgLoaderData* loader = (SvgLoaderData*)data;
|
SvgLoaderData* loader = (SvgLoaderData*)data;
|
||||||
SvgNode* node = loader->svgParse->node;
|
SvgNode* node = loader->svgParse->node;
|
||||||
SvgCircleNode* circle = &(node->node.circle);
|
SvgCircleNode* circle = &(node->node.circle);
|
||||||
unsigned int i;
|
|
||||||
unsigned char* array;
|
unsigned char* array;
|
||||||
int sz = strlen(key);
|
int sz = strlen(key);
|
||||||
|
|
||||||
array = (unsigned char*)circle;
|
array = (unsigned char*)circle;
|
||||||
for (i = 0; i < sizeof(circleTags) / sizeof(circleTags[0]); i++) {
|
for (unsigned int i = 0; i < sizeof(circleTags) / sizeof(circleTags[0]); i++) {
|
||||||
if (circleTags[i].sz - 1 == sz && !strncmp(circleTags[i].tag, key, sz)) {
|
if (circleTags[i].sz - 1 == sz && !strncmp(circleTags[i].tag, key, sz)) {
|
||||||
*((float*)(array + circleTags[i].offset)) = _toFloat(loader->svgParse, value, circleTags[i].type);
|
*((float*)(array + circleTags[i].offset)) = _toFloat(loader->svgParse, value, circleTags[i].type);
|
||||||
return true;
|
return true;
|
||||||
|
@ -1195,12 +1191,11 @@ static bool _attrParseEllipseNode(void* data, const char* key, const char* value
|
||||||
SvgLoaderData* loader = (SvgLoaderData*)data;
|
SvgLoaderData* loader = (SvgLoaderData*)data;
|
||||||
SvgNode* node = loader->svgParse->node;
|
SvgNode* node = loader->svgParse->node;
|
||||||
SvgEllipseNode* ellipse = &(node->node.ellipse);
|
SvgEllipseNode* ellipse = &(node->node.ellipse);
|
||||||
unsigned int i;
|
|
||||||
unsigned char* array;
|
unsigned char* array;
|
||||||
int sz = strlen(key);
|
int sz = strlen(key);
|
||||||
|
|
||||||
array = (unsigned char*)ellipse;
|
array = (unsigned char*)ellipse;
|
||||||
for (i = 0; i < sizeof(ellipseTags) / sizeof(ellipseTags[0]); i++) {
|
for (unsigned int i = 0; i < sizeof(ellipseTags) / sizeof(ellipseTags[0]); i++) {
|
||||||
if (ellipseTags[i].sz - 1 == sz && !strncmp(ellipseTags[i].tag, key, sz)) {
|
if (ellipseTags[i].sz - 1 == sz && !strncmp(ellipseTags[i].tag, key, sz)) {
|
||||||
*((float*)(array + ellipseTags[i].offset)) = _toFloat(loader->svgParse, value, ellipseTags[i].type);
|
*((float*)(array + ellipseTags[i].offset)) = _toFloat(loader->svgParse, value, ellipseTags[i].type);
|
||||||
return true;
|
return true;
|
||||||
|
@ -1340,13 +1335,12 @@ static bool _attrParseRectNode(void* data, const char* key, const char* value)
|
||||||
SvgLoaderData* loader = (SvgLoaderData*)data;
|
SvgLoaderData* loader = (SvgLoaderData*)data;
|
||||||
SvgNode* node = loader->svgParse->node;
|
SvgNode* node = loader->svgParse->node;
|
||||||
SvgRectNode* rect = &(node->node.rect);
|
SvgRectNode* rect = &(node->node.rect);
|
||||||
unsigned int i;
|
|
||||||
unsigned char* array;
|
unsigned char* array;
|
||||||
bool ret = true;
|
bool ret = true;
|
||||||
int sz = strlen(key);
|
int sz = strlen(key);
|
||||||
|
|
||||||
array = (unsigned char*)rect;
|
array = (unsigned char*)rect;
|
||||||
for (i = 0; i < sizeof(rectTags) / sizeof(rectTags[0]); i++) {
|
for (unsigned int i = 0; i < sizeof(rectTags) / sizeof(rectTags[0]); i++) {
|
||||||
if (rectTags[i].sz - 1 == sz && !strncmp(rectTags[i].tag, key, sz)) {
|
if (rectTags[i].sz - 1 == sz && !strncmp(rectTags[i].tag, key, sz)) {
|
||||||
*((float*)(array + rectTags[i].offset)) = _toFloat(loader->svgParse, value, rectTags[i].type);
|
*((float*)(array + rectTags[i].offset)) = _toFloat(loader->svgParse, value, rectTags[i].type);
|
||||||
|
|
||||||
|
@ -1409,12 +1403,11 @@ static bool _attrParseLineNode(void* data, const char* key, const char* value)
|
||||||
SvgLoaderData* loader = (SvgLoaderData*)data;
|
SvgLoaderData* loader = (SvgLoaderData*)data;
|
||||||
SvgNode* node = loader->svgParse->node;
|
SvgNode* node = loader->svgParse->node;
|
||||||
SvgLineNode* line = &(node->node.line);
|
SvgLineNode* line = &(node->node.line);
|
||||||
unsigned int i;
|
|
||||||
unsigned char* array;
|
unsigned char* array;
|
||||||
int sz = strlen(key);
|
int sz = strlen(key);
|
||||||
|
|
||||||
array = (unsigned char*)line;
|
array = (unsigned char*)line;
|
||||||
for (i = 0; i < sizeof(lineTags) / sizeof(lineTags[0]); i++) {
|
for (unsigned int i = 0; i < sizeof(lineTags) / sizeof(lineTags[0]); i++) {
|
||||||
if (lineTags[i].sz - 1 == sz && !strncmp(lineTags[i].tag, key, sz)) {
|
if (lineTags[i].sz - 1 == sz && !strncmp(lineTags[i].tag, key, sz)) {
|
||||||
*((float*)(array + lineTags[i].offset)) = _toFloat(loader->svgParse, value, lineTags[i].type);
|
*((float*)(array + lineTags[i].offset)) = _toFloat(loader->svgParse, value, lineTags[i].type);
|
||||||
return true;
|
return true;
|
||||||
|
@ -1817,10 +1810,9 @@ static bool _attrParseRadialGradientNode(void* data, const char* key, const char
|
||||||
SvgLoaderData* loader = (SvgLoaderData*)data;
|
SvgLoaderData* loader = (SvgLoaderData*)data;
|
||||||
SvgStyleGradient* grad = loader->svgParse->styleGrad;
|
SvgStyleGradient* grad = loader->svgParse->styleGrad;
|
||||||
SvgRadialGradient* radial = grad->radial;
|
SvgRadialGradient* radial = grad->radial;
|
||||||
unsigned int i;
|
|
||||||
int sz = strlen(key);
|
int sz = strlen(key);
|
||||||
|
|
||||||
for (i = 0; i < sizeof(radialTags) / sizeof(radialTags[0]); i++) {
|
for (unsigned int i = 0; i < sizeof(radialTags) / sizeof(radialTags[0]); i++) {
|
||||||
if (radialTags[i].sz - 1 == sz && !strncmp(radialTags[i].tag, key, sz)) {
|
if (radialTags[i].sz - 1 == sz && !strncmp(radialTags[i].tag, key, sz)) {
|
||||||
radialTags[i].tagHandler(loader, radial, value);
|
radialTags[i].tagHandler(loader, radial, value);
|
||||||
return true;
|
return true;
|
||||||
|
@ -1845,7 +1837,6 @@ static bool _attrParseRadialGradientNode(void* data, const char* key, const char
|
||||||
|
|
||||||
static SvgStyleGradient* _createRadialGradient(SvgLoaderData* loader, const char* buf, unsigned bufLength)
|
static SvgStyleGradient* _createRadialGradient(SvgLoaderData* loader, const char* buf, unsigned bufLength)
|
||||||
{
|
{
|
||||||
unsigned int i = 0;
|
|
||||||
SvgStyleGradient* grad = (SvgStyleGradient*)calloc(1, sizeof(SvgStyleGradient));
|
SvgStyleGradient* grad = (SvgStyleGradient*)calloc(1, sizeof(SvgStyleGradient));
|
||||||
if (!grad) return nullptr;
|
if (!grad) return nullptr;
|
||||||
loader->svgParse->styleGrad = grad;
|
loader->svgParse->styleGrad = grad;
|
||||||
|
@ -1871,7 +1862,7 @@ static SvgStyleGradient* _createRadialGradient(SvgLoaderData* loader, const char
|
||||||
simpleXmlParseAttributes(buf, bufLength,
|
simpleXmlParseAttributes(buf, bufLength,
|
||||||
_attrParseRadialGradientNode, loader);
|
_attrParseRadialGradientNode, loader);
|
||||||
|
|
||||||
for (i = 0; i < sizeof(radialTags) / sizeof(radialTags[0]); i++) {
|
for (unsigned int i = 0; i < sizeof(radialTags) / sizeof(radialTags[0]); i++) {
|
||||||
radialTags[i].tagRecalc(loader, grad->radial, grad->userSpace);
|
radialTags[i].tagRecalc(loader, grad->radial, grad->userSpace);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1979,10 +1970,9 @@ static bool _attrParseLinearGradientNode(void* data, const char* key, const char
|
||||||
SvgLoaderData* loader = (SvgLoaderData*)data;
|
SvgLoaderData* loader = (SvgLoaderData*)data;
|
||||||
SvgStyleGradient* grad = loader->svgParse->styleGrad;
|
SvgStyleGradient* grad = loader->svgParse->styleGrad;
|
||||||
SvgLinearGradient* linear = grad->linear;
|
SvgLinearGradient* linear = grad->linear;
|
||||||
unsigned int i;
|
|
||||||
int sz = strlen(key);
|
int sz = strlen(key);
|
||||||
|
|
||||||
for (i = 0; i < sizeof(linear_tags) / sizeof(linear_tags[0]); i++) {
|
for (unsigned int i = 0; i < sizeof(linear_tags) / sizeof(linear_tags[0]); i++) {
|
||||||
if (linear_tags[i].sz - 1 == sz && !strncmp(linear_tags[i].tag, key, sz)) {
|
if (linear_tags[i].sz - 1 == sz && !strncmp(linear_tags[i].tag, key, sz)) {
|
||||||
linear_tags[i].tagHandler(loader, linear, value);
|
linear_tags[i].tagHandler(loader, linear, value);
|
||||||
return true;
|
return true;
|
||||||
|
@ -2012,7 +2002,6 @@ static SvgStyleGradient* _createLinearGradient(SvgLoaderData* loader, const char
|
||||||
SvgStyleGradient* grad = (SvgStyleGradient*)calloc(1, sizeof(SvgStyleGradient));
|
SvgStyleGradient* grad = (SvgStyleGradient*)calloc(1, sizeof(SvgStyleGradient));
|
||||||
if (!grad) return nullptr;
|
if (!grad) return nullptr;
|
||||||
loader->svgParse->styleGrad = grad;
|
loader->svgParse->styleGrad = grad;
|
||||||
unsigned int i;
|
|
||||||
|
|
||||||
grad->type = SvgGradientType::Linear;
|
grad->type = SvgGradientType::Linear;
|
||||||
grad->userSpace = false;
|
grad->userSpace = false;
|
||||||
|
@ -2027,7 +2016,7 @@ static SvgStyleGradient* _createLinearGradient(SvgLoaderData* loader, const char
|
||||||
grad->linear->x2 = 1;
|
grad->linear->x2 = 1;
|
||||||
simpleXmlParseAttributes(buf, bufLength, _attrParseLinearGradientNode, loader);
|
simpleXmlParseAttributes(buf, bufLength, _attrParseLinearGradientNode, loader);
|
||||||
|
|
||||||
for (i = 0; i < sizeof(linear_tags) / sizeof(linear_tags[0]); i++) {
|
for (unsigned int i = 0; i < sizeof(linear_tags) / sizeof(linear_tags[0]); i++) {
|
||||||
linear_tags[i].tagRecalc(loader, grad->linear, grad->userSpace);
|
linear_tags[i].tagRecalc(loader, grad->linear, grad->userSpace);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2062,10 +2051,9 @@ static constexpr struct
|
||||||
|
|
||||||
static GradientFactoryMethod _findGradientFactory(const char* name)
|
static GradientFactoryMethod _findGradientFactory(const char* name)
|
||||||
{
|
{
|
||||||
unsigned int i;
|
|
||||||
int sz = strlen(name);
|
int sz = strlen(name);
|
||||||
|
|
||||||
for (i = 0; i < sizeof(gradientTags) / sizeof(gradientTags[0]); i++) {
|
for (unsigned int i = 0; i < sizeof(gradientTags) / sizeof(gradientTags[0]); i++) {
|
||||||
if (gradientTags[i].sz - 1 == sz && !strncmp(gradientTags[i].tag, name, sz)) {
|
if (gradientTags[i].sz - 1 == sz && !strncmp(gradientTags[i].tag, name, sz)) {
|
||||||
return gradientTags[i].tagHandler;
|
return gradientTags[i].tagHandler;
|
||||||
}
|
}
|
||||||
|
@ -2089,11 +2077,9 @@ static constexpr struct
|
||||||
|
|
||||||
static void _svgLoaderParerXmlClose(SvgLoaderData* loader, const char* content)
|
static void _svgLoaderParerXmlClose(SvgLoaderData* loader, const char* content)
|
||||||
{
|
{
|
||||||
unsigned int i;
|
|
||||||
|
|
||||||
content = _skipSpace(content, nullptr);
|
content = _skipSpace(content, nullptr);
|
||||||
|
|
||||||
for (i = 0; i < sizeof(popArray) / sizeof(popArray[0]); i++) {
|
for (unsigned int i = 0; i < sizeof(popArray) / sizeof(popArray[0]); i++) {
|
||||||
if (!strncmp(content, popArray[i].tag, popArray[i].sz - 1)) {
|
if (!strncmp(content, popArray[i].tag, popArray[i].sz - 1)) {
|
||||||
loader->stack.pop();
|
loader->stack.pop();
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -77,7 +77,7 @@ void _pathAppendArcTo(Array<PathCommand>* cmds, Array<Point>* pts, Point* cur, P
|
||||||
float cosPhiRx, cosPhiRy;
|
float cosPhiRx, cosPhiRy;
|
||||||
float sinPhiRx, sinPhiRy;
|
float sinPhiRx, sinPhiRy;
|
||||||
float cosTheta1, sinTheta1;
|
float cosTheta1, sinTheta1;
|
||||||
int segments, i;
|
int segments;
|
||||||
|
|
||||||
//Some helpful stuff is available here:
|
//Some helpful stuff is available here:
|
||||||
//http://www.w3.org/TR/SVG/implnote.html#ArcImplementationNotes
|
//http://www.w3.org/TR/SVG/implnote.html#ArcImplementationNotes
|
||||||
|
@ -198,7 +198,7 @@ void _pathAppendArcTo(Array<PathCommand>* cmds, Array<Point>* pts, Point* cur, P
|
||||||
cosTheta1 = cos(theta1);
|
cosTheta1 = cos(theta1);
|
||||||
sinTheta1 = sin(theta1);
|
sinTheta1 = sin(theta1);
|
||||||
|
|
||||||
for (i = 0; i < segments; ++i) {
|
for (int i = 0; i < segments; ++i) {
|
||||||
//End angle (for this segment) = current + delta
|
//End angle (for this segment) = current + delta
|
||||||
float c1x, c1y, ex, ey, c2x, c2y;
|
float c1x, c1y, ex, ey, c2x, c2y;
|
||||||
float theta2 = theta1 + delta;
|
float theta2 = theta1 + delta;
|
||||||
|
@ -285,7 +285,6 @@ static int _numberCount(char cmd)
|
||||||
|
|
||||||
static void _processCommand(Array<PathCommand>* cmds, Array<Point>* pts, char cmd, float* arr, int count, Point* cur, Point* curCtl, Point* startPoint, bool *isQuadratic)
|
static void _processCommand(Array<PathCommand>* cmds, Array<Point>* pts, char cmd, float* arr, int count, Point* cur, Point* curCtl, Point* startPoint, bool *isQuadratic)
|
||||||
{
|
{
|
||||||
int i;
|
|
||||||
switch (cmd) {
|
switch (cmd) {
|
||||||
case 'm':
|
case 'm':
|
||||||
case 'l':
|
case 'l':
|
||||||
|
@ -293,7 +292,7 @@ static void _processCommand(Array<PathCommand>* cmds, Array<Point>* pts, char cm
|
||||||
case 's':
|
case 's':
|
||||||
case 'q':
|
case 'q':
|
||||||
case 't': {
|
case 't': {
|
||||||
for (i = 0; i < count - 1; i += 2) {
|
for (int i = 0; i < count - 1; i += 2) {
|
||||||
arr[i] = arr[i] + cur->x;
|
arr[i] = arr[i] + cur->x;
|
||||||
arr[i + 1] = arr[i + 1] + cur->y;
|
arr[i + 1] = arr[i + 1] + cur->y;
|
||||||
}
|
}
|
||||||
|
@ -455,7 +454,7 @@ static void _processCommand(Array<PathCommand>* cmds, Array<Point>* pts, char cm
|
||||||
|
|
||||||
static char* _nextCommand(char* path, char* cmd, float* arr, int* count)
|
static char* _nextCommand(char* path, char* cmd, float* arr, int* count)
|
||||||
{
|
{
|
||||||
int i = 0, large, sweep;
|
int large, sweep;
|
||||||
|
|
||||||
path = _skipComma(path);
|
path = _skipComma(path);
|
||||||
if (isalpha(*path)) {
|
if (isalpha(*path)) {
|
||||||
|
@ -488,7 +487,7 @@ static char* _nextCommand(char* path, char* cmd, float* arr, int* count)
|
||||||
*count = 0;
|
*count = 0;
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
for (i = 0; i < *count; i++) {
|
for (int i = 0; i < *count; i++) {
|
||||||
if (!_parseNumber(&path, &arr[i])) {
|
if (!_parseNumber(&path, &arr[i])) {
|
||||||
*count = 0;
|
*count = 0;
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
Loading…
Add table
Reference in a new issue