--- inkscape-1.4_2024-10-09_e7c3feb100/src/svg/svg-length.cpp.orig +++ inkscape-1.4_2024-10-09_e7c3feb100/src/svg/svg-length.cpp @@ -82,13 +82,13 @@ /* Determine the actual number of fractional digits */ fprec = MAX(static_cast<int>(fprec), static_cast<int>(tprec) - idigits); /* Round value */ - val += 0.5 / pow(10.0, fprec); + val += 0.5 / pow(10.0, static_cast<int>(fprec)); /* Extract integral and fractional parts */ double dival = floor(val); double fval = val - dival; /* Write integra */ if (idigits > (int)tprec) { - buf.append(std::to_string((unsigned int)floor(dival/pow(10.0, idigits-tprec) + .5))); + buf.append(std::to_string((unsigned int)floor(dival/pow(10.0, static_cast<double>(idigits-tprec)) + .5))); for(unsigned int j=0; j<(unsigned int)idigits-tprec; j++) { buf.append("0"); }