diff options
-rw-r--r-- | perlio.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -2249,7 +2249,7 @@ perl_mutex PerlIO_mutex; static void S_more_refcounted_fds(pTHX_ const int new_fd) { const int old_max = PL_perlio_fd_refcnt_size; - const int new_max = 16 + (new_fd & 15); + const int new_max = 16 + (new_fd & ~15); int *new_array; PerlIO_debug("More fds - old=%d, need %d, new=%d\n", @@ -2259,6 +2259,8 @@ S_more_refcounted_fds(pTHX_ const int new_fd) { return; } + assert (new_max > new_fd); + new_array = PerlMemShared_realloc(PL_perlio_fd_refcnt, new_max * sizeof(int)); |