rmagick 7.0.1 → 7.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: dde5ecba6c9f64a65d65582b49338a8d29e8385b3734f3a959b4c690f0c9ea66
4
- data.tar.gz: d133faa5b9ab9a6647b5de590538bdcebb86aacaedf1153c0bb1ac5235a63de7
3
+ metadata.gz: '08ddd337d97e120559c7795dd051433b1453f7c420777083bf0ba29c094659b2'
4
+ data.tar.gz: 06e68a270014d1a93bc4873723e82f2a83144086d33c3329ff583ea357694af4
5
5
  SHA512:
6
- metadata.gz: 200d4179fbb2a170ac0e49ca3da399717d76eb5b66a66743fcefc3f4c75a107ecd90296c9c69446b8c7e690c966340c34b64f0c561a3826a86d3bb0d61a8eec7
7
- data.tar.gz: e301f6a39bac7a1302630bbba806b225381f07716e4514c555d1d39a4e773106bcfc6f61a95cb06ff1aff11044461e448797407585db40518edab77d4f996c48
6
+ metadata.gz: 8b21f2dacdd58215e7fdfe7cce5c057280c8450d77fdab2b5e6bf48b2d5ba4995309b54054db4e06537ea6bc496b9e4126a2fe2462704caeaeec3be520ce94f5
7
+ data.tar.gz: 46e1f9816246476793cdf5f71c33abb794212a0d1935dcf81ec6a83aeb1a3668a6248cf1d7d8ad8993a758c3e129835f2cd8a4f5f5d2c0a695328a271869db29
data/CHANGELOG.md CHANGED
@@ -3,6 +3,16 @@
3
3
  All notable changes to this project are documented in this file.
4
4
  This project adheres to [Semantic Versioning](http://semver.org/).
5
5
 
6
+ ## RMagick 7.0.2
7
+
8
+ Bug Fixes
9
+
10
+ * Fix missing error check in KernelInfo#clone (#1794)
11
+ * Fix memory leak in Image#gamma_correct (#1793)
12
+ * Fix memory leak in Image#{color_profile=, iptc_profile=} when out of memory (#1792)
13
+ * Fix memory leaks if level operations fail in Image#{level_colors, levelize_channel} (#1791)
14
+ * Clean up ImageMagick resources on exit to fix ruby_memcheck false leaks (#1790)
15
+
6
16
  ## RMagick 7.0.1
7
17
 
8
18
  Bug Fixes
@@ -2930,6 +2930,7 @@ set_profile(VALUE self, const char *name, VALUE profile)
2930
2930
  info = CloneImageInfo(NULL);
2931
2931
  if (!info)
2932
2932
  {
2933
+ DestroyExceptionInfo(exception);
2933
2934
  rb_raise(rb_eNoMemError, "not enough memory to continue");
2934
2935
  }
2935
2936
 
@@ -7646,7 +7647,7 @@ Image_gamma_correct(int argc, VALUE *argv, VALUE self)
7646
7647
  }
7647
7648
 
7648
7649
  #if defined(IMAGEMAGICK_7)
7649
- CHECK_EXCEPTION();
7650
+ rm_check_exception(exception, new_image, DestroyOnError);
7650
7651
  DestroyExceptionInfo(exception);
7651
7652
  #else
7652
7653
  rm_check_image_exception(new_image, DestroyOnError);
@@ -8675,6 +8676,7 @@ Image_level_colors(int argc, VALUE *argv, VALUE self)
8675
8676
  #endif
8676
8677
  if (!okay)
8677
8678
  {
8679
+ DestroyImage(new_image);
8678
8680
  rb_raise(rb_eRuntimeError, "LevelImageColors failed for unknown reason.");
8679
8681
  }
8680
8682
 
@@ -8756,6 +8758,7 @@ Image_levelize_channel(int argc, VALUE *argv, VALUE self)
8756
8758
 
8757
8759
  if (!okay)
8758
8760
  {
8761
+ DestroyImage(new_image);
8759
8762
  rb_raise(rb_eRuntimeError, "LevelizeImageChannel failed for unknown reason.");
8760
8763
  }
8761
8764
  return rm_image_new(new_image);
@@ -162,6 +162,10 @@ VALUE
162
162
  KernelInfo_clone(VALUE self)
163
163
  {
164
164
  KernelInfo *kernel = CloneKernelInfo((KernelInfo*)DATA_PTR(self));
165
+ if (!kernel)
166
+ {
167
+ rb_raise(rb_eNoMemError, "not enough memory to continue");
168
+ }
165
169
  return TypedData_Wrap_Struct(Class_KernelInfo, &rm_kernel_info_data_type, kernel);
166
170
  }
167
171
 
@@ -214,6 +214,12 @@ static void set_managed_memory(void)
214
214
 
215
215
 
216
216
 
217
+ static void
218
+ rmagick_terminus(VALUE unused)
219
+ {
220
+ MagickCoreTerminus();
221
+ }
222
+
217
223
  /**
218
224
  * Define the classes and constants.
219
225
  *
@@ -231,6 +237,7 @@ Init_RMagick2(void)
231
237
  set_managed_memory();
232
238
 
233
239
  MagickCoreGenesis("RMagick", MagickFalse);
240
+ rb_set_end_proc(rmagick_terminus, Qnil);
234
241
 
235
242
  test_Magick_version();
236
243
 
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Magick
4
- VERSION = '7.0.1'
4
+ VERSION = '7.0.2'
5
5
  MIN_RUBY_VERSION = '3.2.0'
6
6
  MIN_IM6_VERSION = '6.9.0'
7
7
  MIN_IM7_VERSION = '7.1.0'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rmagick
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.0.1
4
+ version: 7.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tim Hunter