efficient_join 2.1.3 → 2.1.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ext/efficient_join/efficient_join.c +4 -4
- data/lib/efficient_join/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d76d30fa5be5263c9d28faa2cb320dc4a3c61d9baf1fbefcc7cab69564bdc1cf
|
4
|
+
data.tar.gz: 7f4a5598aa3ed81761842bdaf0f92614c33108ecda16617453284fee1e4848d0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f546d93a65ee3158bc1ff764d6b9af90b37250ce25eff8dbc44928720a48eee0b7a3c1a3606efd809fddea0fe6e0df205b224e11114f135ddf8f065aa60fea44
|
7
|
+
data.tar.gz: b76e0dd48ba2100e0d2903852ded4242a2adcebec7273b8c6ac72d1c9c87f1e91c6cccee5a45063c1b4a81b0231c4a1566285cd3a4214bec2a2a9cb9ec9b2378
|
@@ -18,15 +18,15 @@ static void strbuf_free(struct strbuf_t *strbuf) {
|
|
18
18
|
free(strbuf->buf);
|
19
19
|
}
|
20
20
|
|
21
|
-
static inline void strbuf_expand(struct strbuf_t *strbuf) {
|
22
|
-
strbuf->buf = (char *)realloc(strbuf->buf, strbuf->len * 2);
|
21
|
+
static inline void strbuf_expand(struct strbuf_t *strbuf, size_t min_size) {
|
22
|
+
strbuf->buf = (char *)realloc(strbuf->buf, min_size > strbuf->len * 2 ? min_size : strbuf->len * 2);
|
23
23
|
strbuf->len *= 2;
|
24
24
|
}
|
25
25
|
|
26
26
|
static inline void strbuf_write_str(struct strbuf_t *strbuf, const char *str, size_t len)
|
27
27
|
{
|
28
28
|
if (strbuf->len < strbuf->pos + len) {
|
29
|
-
strbuf_expand(strbuf);
|
29
|
+
strbuf_expand(strbuf, strbuf->pos + len);
|
30
30
|
}
|
31
31
|
|
32
32
|
memcpy(strbuf->buf + strbuf->pos, str, len);
|
@@ -39,7 +39,7 @@ static inline void strbuf_write_int64(struct strbuf_t *strbuf, int64_t value)
|
|
39
39
|
|
40
40
|
// 22: maximum length of string representation of 64-bit int
|
41
41
|
if (strbuf->len <= strbuf->pos + 22) {
|
42
|
-
strbuf_expand(strbuf);
|
42
|
+
strbuf_expand(strbuf, strbuf->pos + 22);
|
43
43
|
}
|
44
44
|
|
45
45
|
bytes_written = snprintf(strbuf->buf + strbuf->pos, 22, "%ld", value);
|