Bug #10019 » pack.c.patch
pack.c (working copy) | ||
---|---|---|
static void
|
||
encodes(VALUE str, const char *s, long len, int type, int tail_lf)
|
||
{
|
||
enum {buff_size = 4096, encoded_unit = 4};
|
||
char buff[buff_size + 1]; /* +1 for tail_lf */
|
||
enum {buff_size = 256, encoded_unit = 4};
|
||
char buff[buff_size];
|
||
long i = 0;
|
||
const char *trans = type == 'u' ? uu_table : b64_table;
|
||
char padding;
|
||
... | ... | |
s += 3;
|
||
len -= 3;
|
||
}
|
||
if (buff_size-i < encoded_unit) {
|
||
if ( ( buff_size-i < encoded_unit ) || len < 3 ) {
|
||
rb_str_buf_cat(str, buff, i);
|
||
i = 0;
|
||
}
|
- « Previous
- 1
- 2
- 3
- Next »