SVN commit 759457 by staniek: KexiDB
fix the bug #146818: handling expressions containing binary operators like *, /, -, + where both arguments are of floating-point type (with single or double precision). Previously the result was marked as boolean, now it is floating-point. CCMAIL:[EMAIL PROTECTED] CCMAIL:kexi@kde.org M +2 -6 expression.cpp --- branches/koffice/1.6/koffice/kexi/kexidb/expression.cpp #759456:759457 @@ -400,14 +400,10 @@ if (ltInt && rtInt) return KexiDB::maximumForIntegerTypes(lt, rt); - if (Field::isFPNumericType(lt) && rtInt) + if (Field::isFPNumericType(lt) && (rtInt || lt==rt)) return lt; - if (Field::isFPNumericType(rt) && ltInt) + if (Field::isFPNumericType(rt) && (ltInt || lt==rt)) return rt; - if ((lt==Field::Double || lt==Field::Float) && rtInt) - return lt; - if ((rt==Field::Double || rt==Field::Float) && ltInt) - return rt; return Field::Boolean; } _______________________________________________ Kexi mailing list Kexi@kde.org https://mail.kde.org/mailman/listinfo/kexi