summaryrefslogtreecommitdiff
path: root/vcl/source/font
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2019-02-18 10:10:07 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2019-02-18 11:04:27 +0100
commitc7f5da8b04f6e3d69953e38cb3f3bde86104d85a (patch)
tree08f46bc3ff1eaa11e9fd28cc5b683e5eeff971bc /vcl/source/font
parent414cd8b6582ab6aea69c96f70f0594a51eb0665d (diff)
fix comparison of std::lower_bound result
turns out using a compare operator that takes something other than the element type as a parameter is really hard to get right. The changes in: basic/source/classes/propacc.cxx comphelper/source/property/propagg.cxx vcl/source/font/font.cxx are a regression from commit 35e80e9726b5fee6a00caa58349a4b5d924dad7c Date: Fri Oct 19 16:01:19 2018 +0200 when calling std::lower_bound The change in toolkit/source/awt/vclxtoolkit.cxx is a regression from commit 76dd28afc9c0eb632a5dd20eb51704ee0bbc4b58 Date: Tue Oct 9 16:27:11 2018 +0200 loplugin:staticvar in various Change-Id: Icf6db22e1fc091517a53dd3624913c8c2071c106 Reviewed-on: https://gerrit.libreoffice.org/67954 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'vcl/source/font')
-rw-r--r--vcl/source/font/font.cxx3
1 files changed, 2 insertions, 1 deletions
diff --git a/vcl/source/font/font.cxx b/vcl/source/font/font.cxx
index cd8ebb9b2a4b..68b8f3125ba8 100644
--- a/vcl/source/font/font.cxx
+++ b/vcl/source/font/font.cxx
@@ -611,7 +611,8 @@ namespace
aEnt.string_len = (pClose-pOpen)-1;
aEnt.weight = WEIGHT_NORMAL;
WeightSearchEntry const * pFound = std::lower_bound( std::begin(weight_table), std::end(weight_table), aEnt );
- if( pFound != std::end(weight_table) && !(*pFound < aEnt))
+ if( pFound != std::end(weight_table) &&
+ rtl_str_compareIgnoreAsciiCase_WithLength( pFound->string, pFound->string_len, aEnt.string, aEnt.string_len) == 0 )
o_rResult.SetWeight( pFound->weight );
}
}