X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Fsrc%2Fsynfig%2Fvaluenode_pow.cpp;h=20daaebe08d76680c67dd220829a54fe0fa50aff;hb=c93fad2d78617574f9e0e66d3b2701bfd85e8024;hp=fa00618cfcae5c195b5b1d06a8efbcbd72cd1d9e;hpb=adfc80c126f482d7ea2bac38001a2c4a7c7df88c;p=synfig.git diff --git a/synfig-core/src/synfig/valuenode_pow.cpp b/synfig-core/src/synfig/valuenode_pow.cpp index fa00618..20daaeb 100644 --- a/synfig-core/src/synfig/valuenode_pow.cpp +++ b/synfig-core/src/synfig/valuenode_pow.cpp @@ -170,14 +170,17 @@ ValueNode_Pow::operator()(Time t)const if (abs(power) < epsilon) //x^0 = 1 return 1; if (abs(base) < epsilon) + { if (power > 0) //0^x=0 return Real(0); else + { if ( ( ((int) power) % 2 != 0) && (base < 0) ) //(-0)^(-odd)=-inf return -infinite; else return infinite; - + } + } if (base <= epsilon && ((int) power) != power) //negative number to fractional power -> undefined power = ((int) power); //so round off power to nearest integer