Bug# 19573096: LOADING CORRUPTED GEOMETRY DATA INTO A
MYISAM TABLE CAUSES THE SERVER TO CRASH Backport to mysql-5.1
This commit is contained in:
parent
e65f3f6f2e
commit
d2a5d9716a
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
|
Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@ -70,6 +70,10 @@ static double mbr_join_square(const double *a, const double *b, int n_dim)
|
|||||||
b += 2;
|
b += 2;
|
||||||
}while (a != end);
|
}while (a != end);
|
||||||
|
|
||||||
|
/* Check for infinity or NaN */
|
||||||
|
if (my_isinf(square) || isnan(square))
|
||||||
|
square = DBL_MAX;
|
||||||
|
|
||||||
return square;
|
return square;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -104,6 +108,9 @@ static void pick_seeds(SplitStruct *node, int n_entries,
|
|||||||
double max_d = -DBL_MAX;
|
double max_d = -DBL_MAX;
|
||||||
double d;
|
double d;
|
||||||
|
|
||||||
|
*seed_a = node;
|
||||||
|
*seed_b = node + 1;
|
||||||
|
|
||||||
for (cur1 = node; cur1 < lim1; ++cur1)
|
for (cur1 = node; cur1 < lim1; ++cur1)
|
||||||
{
|
{
|
||||||
for (cur2=cur1 + 1; cur2 < lim2; ++cur2)
|
for (cur2=cur1 + 1; cur2 < lim2; ++cur2)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user