Terminate loop properly when cursor window is full. DO NOT MERGE
The existing code exits the column-filling loop immediately but
may continue to try to fill rows. Ordinarily this should fail
too but it's possible for the process to continue and then
blow up a little later. Fixed this problem by exiting the row-
filling loop promptly.
Bug: 21406130
Change-Id: Ifab59188d5d1b40f3c1f5c97604dd48da71bf37b
(cherry picked from commit bb8c841e90)
This commit is contained in:
@@ -272,7 +272,7 @@ public class DatabaseUtils {
|
|||||||
window.setStartPosition(position);
|
window.setStartPosition(position);
|
||||||
window.setNumColumns(numColumns);
|
window.setNumColumns(numColumns);
|
||||||
if (cursor.moveToPosition(position)) {
|
if (cursor.moveToPosition(position)) {
|
||||||
do {
|
rowloop: do {
|
||||||
if (!window.allocRow()) {
|
if (!window.allocRow()) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -309,7 +309,7 @@ public class DatabaseUtils {
|
|||||||
}
|
}
|
||||||
if (!success) {
|
if (!success) {
|
||||||
window.freeLastRow();
|
window.freeLastRow();
|
||||||
break;
|
break rowloop;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
position += 1;
|
position += 1;
|
||||||
|
|||||||
Reference in New Issue
Block a user