summaryrefslogtreecommitdiff
path: root/myisam
diff options
context:
space:
mode:
authorunknown <serg@serg.mylan>2004-10-22 20:34:25 +0200
committerunknown <serg@serg.mylan>2004-10-22 20:34:25 +0200
commit1e9bf28ba4e6c001798c50133580ba2f276af402 (patch)
treea7fb81ec2f50d6d80c90fc418bccdd0eafd1d451 /myisam
parentbe6e299abb4e35657be1c2aeb1d91bd67802d0a4 (diff)
parent2f8b0ab3a7ce995316a93aafb3c282828eb80ab6 (diff)
downloadmariadb-git-1e9bf28ba4e6c001798c50133580ba2f276af402.tar.gz
Merge bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1 sql/sql_parse.cc: Auto merged
Diffstat (limited to 'myisam')
-rw-r--r--myisam/ft_nlq_search.c2
-rw-r--r--myisam/rt_index.c6
-rw-r--r--myisam/rt_mbr.c1
3 files changed, 8 insertions, 1 deletions
diff --git a/myisam/ft_nlq_search.c b/myisam/ft_nlq_search.c
index c9caf4f39af..83de6acdab9 100644
--- a/myisam/ft_nlq_search.c
+++ b/myisam/ft_nlq_search.c
@@ -99,6 +99,7 @@ static int walk_and_match(FT_WORD *word, uint32 count, ALL_IN_ONE *aio)
info->update|= HA_STATE_AKTIV; /* for _mi_test_if_changed() */
+ /* The following should be safe, even if we compare doubles */
while (!r && gweight)
{
@@ -127,6 +128,7 @@ static int walk_and_match(FT_WORD *word, uint32 count, ALL_IN_ONE *aio)
#else
#error
#endif
+ /* The following should be safe, even if we compare doubles */
if (tmp_weight==0)
DBUG_RETURN(doc_cnt); /* stopword, doc_cnt should be 0 */
diff --git a/myisam/rt_index.c b/myisam/rt_index.c
index 4fffd848624..cfb2ca877f4 100644
--- a/myisam/rt_index.c
+++ b/myisam/rt_index.c
@@ -494,9 +494,11 @@ static uchar *rtree_pick_key(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *key,
for (; k < last; k = rt_PAGE_NEXT_KEY(k, key_length, nod_flag))
{
+ /* The following is safe as -1.0 is an exact number */
if ((increase = rtree_area_increase(keyinfo->seg, k, key, key_length,
- &area)) == -1)
+ &area)) == -1.0)
return NULL;
+ /* The following should be safe, even if we compare doubles */
if (increase < best_incr)
{
best_key = k;
@@ -505,6 +507,7 @@ static uchar *rtree_pick_key(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *key,
}
else
{
+ /* The following should be safe, even if we compare doubles */
if ((increase == best_incr) && (area < best_area))
{
best_key = k;
@@ -1021,6 +1024,7 @@ ha_rows rtree_estimate(MI_INFO *info, uint keynr, uchar *key,
{
double k_area = rtree_rect_volume(keyinfo->seg, k, key_length);
+ /* The following should be safe, even if we compare doubles */
if (k_area == 0)
{
if (flag & (MBR_CONTAIN | MBR_INTERSECT))
diff --git a/myisam/rt_mbr.c b/myisam/rt_mbr.c
index c7fde674729..c43daec2f7c 100644
--- a/myisam/rt_mbr.c
+++ b/myisam/rt_mbr.c
@@ -129,6 +129,7 @@ int rtree_key_cmp(HA_KEYSEG *keyseg, uchar *b, uchar *a, uint key_length,
break;
#endif
case HA_KEYTYPE_FLOAT:
+ /* The following should be safe, even if we compare doubles */
RT_CMP_GET(float, mi_float4get, 4, nextflag);
break;
case HA_KEYTYPE_DOUBLE: