comparison utils.c @ 1996:f481d3309ad0 libavcodec

simplify
author michael
date Fri, 30 Apr 2004 18:11:34 +0000
parents 8d3540dddd1b
children b737b5e96ee0
comparison
equal deleted inserted replaced
1995:38e77ac19836 1996:f481d3309ad0
774 int exact=1, sign=0; 774 int exact=1, sign=0;
775 int64_t gcd; 775 int64_t gcd;
776 776
777 assert(den != 0); 777 assert(den != 0);
778 778
779 if(den < 0){ 779 if(den < 0)
780 den= -den; 780 return av_reduce(dst_nom, dst_den, -nom, -den, max);
781 nom= -nom; 781
782 } 782 sign= nom < 0;
783 783 nom= ABS(nom);
784 if(nom < 0){
785 nom= -nom;
786 sign= 1;
787 }
788 784
789 gcd = ff_gcd(nom, den); 785 gcd = ff_gcd(nom, den);
790 nom /= gcd; 786 nom /= gcd;
791 den /= gcd; 787 den /= gcd;
792 788
812 den= a1.den; 808 den= a1.den;
813 } 809 }
814 810
815 assert(ff_gcd(nom, den) == 1); 811 assert(ff_gcd(nom, den) == 1);
816 812
817 if(sign) nom= -nom; 813 *dst_nom = sign ? -nom : nom;
818
819 *dst_nom = nom;
820 *dst_den = den; 814 *dst_den = den;
821 815
822 return exact; 816 return exact;
823 } 817 }
824 818