/*
Check from texture_path
*/
- std::string texture_path = g_settings->get("texture_path");
- if (texture_path != "")
- {
+ const std::string &texture_path = g_settings->get("texture_path");
+ if (texture_path != "") {
std::string testpath = texture_path + DIR_DELIM + filename;
// Check all filename extensions. Returns "" if not found.
fullpath = getImagePath(testpath);
* equal to the target minimum. If e.g. this is a vertical frames
* animation, the short dimension will be the real size.
*/
+ if ((dim.Width == 0) || (dim.Height == 0)) {
+ errorstream << "generateImagePart(): Illegal 0 dimension "
+ << "for part_of_name=\""<< part_of_name
+ << "\", cancelling." << std::endl;
+ return false;
+ }
u32 xscale = scaleto / dim.Width;
u32 yscale = scaleto / dim.Height;
u32 scale = (xscale > yscale) ? xscale : yscale;
for (u32 x = 0; x < dim.Width; x++)
{
video::SColor c = baseimg->getPixel(x, y);
- c.color ^= mask;
+ c.color ^= mask;
baseimg->setPixel(x, y, c);
}
}
if (isKnownSourceImage("override_normal.png"))
return getTexture("override_normal.png");
std::string fname_base = name;
- std::string normal_ext = "_normal.png";
+ static const char *normal_ext = "_normal.png";
+ static const u32 normal_ext_size = strlen(normal_ext);
size_t pos = fname_base.find(".");
std::string fname_normal = fname_base.substr(0, pos) + normal_ext;
if (isKnownSourceImage(fname_normal)) {
size_t i = 0;
while ((i = fname_base.find(".", i)) != std::string::npos) {
fname_base.replace(i, 4, normal_ext);
- i += normal_ext.length();
+ i += normal_ext_size;
}
return getTexture(fname_base);
- }
+ }
return NULL;
}