Open
Description
Having interesting errors both on Mac and Ubuntu (Docker) while adding text on top of an image using ruby-vips.
text = Vips::Image.text(
text_content,
width: width,
height: height,
align: vips_align,
font: font_name,
fontfile: font_file,
spacing: line_spacing
)
image.composite(text, :over, x: x, y: y)
On my mac development environment, If I call this method from an ActiveJob, it fails with:
objc[25970]: +[UIFontDescriptor initialize] may have been in progress in another thread when fork() was called.
objc[25970]: +[UIFontDescriptor initialize] may have been in progress in another thread when fork() was called. We cannot safely call it or ignore it in the fork() child process. Crashing instead. Set a breakpoint on objc_initializeAfterForkError to debug.
Using of env var OBJC_DISABLE_INITIALIZE_FORK_SAFETY=yes
fixes it as suggested in #155 (comment)
However, on Ubuntu docker environment I randomly get segmentation fault errors or floating point exception errors when running the from Rails console.
Everthing works fine if I don't use the .text
method in both environments.
Mac stack
MacOS 15.3.1 (M2)
Ruby 3.3.5
Rails 7.2.1
vips-8.16.0
Ubuntu stack
Dockerized x86_64
Linux 116.202.15.119-1f5530ef76b3 6.8.0-54-generic
Using libvips42 package
Ruby 3.3.5
Rails 7.2.1