https://bugs.documentfoundation.org/show_bug.cgi?id=173993
Bug ID: 173993
Summary: macOS Sonoma x86 + Xcode 16.2 FP precision fails
testTdf128206 but other platforms pass
Product: LibreOffice
Version: 27.2.0.0 alpha0+ master
Hardware: x86-64 (AMD64)
OS: macOS (All)
Status: UNCONFIRMED
Severity: normal
Priority: medium
Component: Draw
Assignee: [email protected]
Reporter: [email protected]
Description:
The Draw unit test testTdf128206 fails on Sonoma (14) + Xcode 16.2 because in
VclProcessor2D::RenderTextSimpleOrDecoratedPortionPrimitive2D() the following
comparison evaluates to true:
const bool bScaleFont(aFontSize.getY() !=
std::round(aFontSize.getY())
leading to following a different path than other platforms and not pushing a
MapMode metafile operation, which the testcase looks for. Both sides of the
comparison evaluate to 635.0000 and are the same if explicitly cast to float
(rather than double), indicating floating-point calculation differences causing
very small value differences between the two.
The difference in this case may be immaterial to the code and testcase (ie it
shouldn't make a difference that the font size is 635.0000000000000001 rather
than 635.0) but there may be more places than just this one that need fixing.
Steps to Reproduce:
1. Get an x86 Mac with Sonoma (macOS 14) and Xcode 16.2
2. make CppunitTest_sd_layout_tests CPPUNIT_TEST_NAME="testTdf128206"
3.
Actual Results:
testTdf128206 will fail because of a missing push[MapMode]
Expected Results:
Test should pass
Reproducible: Always
User Profile Reset: No
Additional Info:
Considered the comparison equivalent
--
You are receiving this mail because:
You are the assignee for the bug.