Avoid unnecessary truncation to sal_uInt16
At least during CppunitTest_sw_odfimport, Clang's -fsanitize=implicit-signed-integer-truncation warns (for nB) that an "implicit conversion from type 'long' of value -181 (64-bit, signed) to type 'const sal_uInt16' (aka 'const unsigned short') changed the value to 65355 (16-bit, unsigned)". Change-Id: I91bd1413fca248f5f05331980d8ac92753d366ab Reviewed-on: https://gerrit.libreoffice.org/68665 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
This commit is contained in:
@@ -386,8 +386,8 @@ void ImplFontMetricData::ImplInitFlags( const OutputDevice* pDev )
|
||||
const OUString sFullstop( u'\x3001' ); // Fullwidth fullstop
|
||||
tools::Rectangle aRect;
|
||||
pDev->GetTextBoundRect( aRect, sFullstop );
|
||||
const sal_uInt16 nH = rFont.GetFontSize().Height();
|
||||
const sal_uInt16 nB = aRect.Left();
|
||||
const auto nH = rFont.GetFontSize().Height();
|
||||
const auto nB = aRect.Left();
|
||||
// Use 18.75% as a threshold to define a centered fullwidth fullstop.
|
||||
// In general, nB/nH < 5% for most Japanese fonts.
|
||||
bCentered = nB > (((nH >> 1)+nH)>>3);
|
||||
|
Reference in New Issue
Block a user