| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -60,13 +60,13 @@ size_t base64_decode_slow(char* dst, size_t dstlen, | |||
| 60 | 60 | size_t k = 0; | |
| 61 | 61 | for (;;) { | |
| 62 | 62 | #define V(expr) \ | |
| 63 | - while (i < srclen) { \ | ||
| 63 | + for (;;) { \ | ||
| 64 | 64 | const uint8_t c = src[i]; \ | |
| 65 | 65 | lo = unbase64(c); \ | |
| 66 | 66 | i += 1; \ | |
| 67 | 67 | if (lo < 64) \ | |
| 68 | 68 | break; /* Legal character. */ \ | |
| 69 | - if (c == '=') \ | ||
| 69 | + if (c == '=' || i >= srclen) \ | ||
| 70 | 70 | return k; \ | |
| 71 | 71 | } \ | |
| 72 | 72 | expr; \ | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -462,6 +462,10 @@ assert.strictEqual( | |||
| 462 | 462 | // Regression test for https://github.com/nodejs/node/issues/3496. | |
| 463 | 463 | assert.strictEqual(Buffer.from('=bad'.repeat(1e4), 'base64').length, 0); | |
| 464 | 464 | ||
| 465 | + // Regression test for https://github.com/nodejs/node/issues/11987. | ||
| 466 | + assert.deepStrictEqual(Buffer.from('w0 ', 'base64'), | ||
| 467 | + Buffer.from('w0', 'base64')); | ||
| 468 | + | ||
| 465 | 469 | { | |
| 466 | 470 | // Creating buffers larger than pool size. | |
| 467 | 471 | const l = Buffer.poolSize + 5; | |
| Back | FazBrowse Home | New Git URL |
0 commit comments