Skip to content

Commit 46f22a5

Browse files
benjirewiskevinAlbs
authored andcommitted
CDRIVER-3924 Ignore RCs when comparing test version strings (#767)
1 parent 734b5c0 commit 46f22a5

File tree

1 file changed

+5
-12
lines changed

1 file changed

+5
-12
lines changed

src/libmongoc/tests/test-libmongoc.c

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2080,7 +2080,7 @@ test_framework_max_write_batch_size (void)
20802080
return size;
20812081
}
20822082

2083-
#define N_SERVER_VERSION_PARTS 4
2083+
#define N_SERVER_VERSION_PARTS 3
20842084

20852085
static server_version_t
20862086
_parse_server_version (const bson_t *buildinfo)
@@ -2096,11 +2096,8 @@ _parse_server_version (const bson_t *buildinfo)
20962096
/* Server returns a 4-part version like [3, 2, 0, 0], or like [3, 2, 0, -49]
20972097
* for an RC. Ignore the 4th part since RCs are equivalent to non-RCs for
20982098
* testing purposes. */
2099-
i = 0;
2100-
while (bson_iter_next (&array_iter)) {
2101-
if (++i == N_SERVER_VERSION_PARTS) {
2102-
break;
2103-
}
2099+
for (i = 0; i < N_SERVER_VERSION_PARTS && bson_iter_next (&array_iter);
2100+
i++) {
21042101
ret *= 1000;
21052102
ret += 100 + bson_iter_as_int64 (&array_iter);
21062103
}
@@ -2141,23 +2138,19 @@ test_framework_str_to_version (const char *version_str)
21412138
server_version_t ret = 0;
21422139

21432140
str_copy = bson_strdup (version_str);
2144-
i = 0;
21452141
part = strtok (str_copy, ".");
21462142

21472143
/* Versions can have 4 parts like "3.2.0.0", or like "3.2.0.-49" for an RC.
21482144
* Ignore the 4th part since RCs are equivalent to non-RCs for testing
21492145
* purposes. */
2150-
while (part) {
2151-
if (++i == N_SERVER_VERSION_PARTS) {
2152-
break;
2153-
}
2146+
for (i = 0; i < N_SERVER_VERSION_PARTS && part; i++) {
21542147
ret *= 1000;
21552148
ret += 100 + bson_ascii_strtoll (part, &end, 10);
21562149
part = strtok (NULL, ".");
21572150
}
21582151

21592152
/* pad out a short version like "3.0" to three parts */
2160-
for (; i < N_SERVER_VERSION_PARTS - 1; i++) {
2153+
for (; i < N_SERVER_VERSION_PARTS; i++) {
21612154
ret *= 1000;
21622155
ret += 100;
21632156
}

0 commit comments

Comments
 (0)