ext/RMagick/rminfo.c in rmagick-2.16.0 vs ext/RMagick/rminfo.c in rmagick-3.0.0
- old
+ new
@@ -1732,10 +1732,13 @@
else
{
(void) SetImageInfoProgressMonitor(info, rm_progress_monitor, (void *)monitor);
}
+#if defined(_WIN32)
+ rb_warn("Info#monitor= does not work on Windows");
+#endif
return self;
}
@@ -1837,14 +1840,16 @@
origin_str = rm_to_s(origin_arg);
origin = GetPageGeometry(StringValuePtr(origin_str));
if (IsGeometry(origin) == MagickFalse)
{
- rb_raise(rb_eArgError, "invalid origin geometry: %s", origin);
+ magick_free(origin);
+ rb_raise(rb_eArgError, "invalid origin geometry");
}
(void) SetImageOption(info, "origin", origin);
+ magick_free(origin);
RB_GC_GUARD(origin_str);
return self;
}
@@ -1900,10 +1905,10 @@
{
magick_free(info->page);
info->page = NULL;
return self;
}
- magick_clone_string(&info->page, geometry);
+ info->page = geometry;
RB_GC_GUARD(geom_str);
return self;
}