summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornagachika <nagachika@ruby-lang.org>2022-02-19 14:19:22 +0900
committernagachika <nagachika@ruby-lang.org>2022-02-19 14:19:22 +0900
commit5c15cecfbfe61f9d46f45c949829c79cb7f162a9 (patch)
tree13526284943cf12bfdc7cdb0d1fe9a5aaa19091d
parent7cd359261e2427dbed1e721e982043a1ebc2cdbc (diff)
merge revision(s) 0c5f8c62766afe4605172800063e63fe36996658: [Backport #10961]
[ruby/zlib] Resume zstream if available [Bug #10961] --- ext/zlib/zlib.c | 6 ++++++ 1 file changed, 6 insertions(+)
-rw-r--r--ext/zlib/zlib.c6
-rw-r--r--version.h4
2 files changed, 8 insertions, 2 deletions
diff --git a/ext/zlib/zlib.c b/ext/zlib/zlib.c
index 4e339b9063..d7caddf39a 100644
--- a/ext/zlib/zlib.c
+++ b/ext/zlib/zlib.c
@@ -1095,6 +1095,12 @@ loop:
RB_NOGVL_UBF_ASYNC_SAFE);
#endif
+ /* retry if no exception is thrown */
+ if (err == Z_OK && args.interrupt) {
+ args.interrupt = 0;
+ goto loop;
+ }
+
if (flush != Z_FINISH && err == Z_BUF_ERROR
&& z->stream.avail_out > 0) {
z->flags |= ZSTREAM_FLAG_IN_STREAM;
diff --git a/version.h b/version.h
index 65aa52abe7..2cc0abb3ff 100644
--- a/version.h
+++ b/version.h
@@ -12,11 +12,11 @@
# define RUBY_VERSION_MINOR RUBY_API_VERSION_MINOR
#define RUBY_VERSION_TEENY 4
#define RUBY_RELEASE_DATE RUBY_RELEASE_YEAR_STR"-"RUBY_RELEASE_MONTH_STR"-"RUBY_RELEASE_DAY_STR
-#define RUBY_PATCHLEVEL 175
+#define RUBY_PATCHLEVEL 176
#define RUBY_RELEASE_YEAR 2022
#define RUBY_RELEASE_MONTH 2
-#define RUBY_RELEASE_DAY 13
+#define RUBY_RELEASE_DAY 19
#include "ruby/version.h"