Bug #2220

Hang in dln.c when using 1.8.6-p383 on Snow Leopard

Added by Andrew White over 2 years ago. Updated 9 months ago.

[ruby-core:26117]
Status:Closed Start date:10/16/2009
Priority:Normal Due date:
Assignee:Kirk Haines % Done:

100%

Category:-
Target version:-
ruby -v:ruby 1.8.6 (2009-08-04 patchlevel 383) [i686-darwin10.0.0]

Description

Snow Leopard seems to have introduced some backward compatibility issues with the old NextStep era NSLinkModule group of functions. When trying to load RMagick the process hangs in dln_load and has to be killed using kill -9. The best fix going forward is to switch to dlopen as NSLinkModule has been deprecated since Tiger and is less efficient than dlopen in Snow Leopard.

The attached patch is a backport of r11810:
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=11810

Original Ruby-Core discussion:
http://www.ruby-forum.com/topic/196606

dln-snow-leopard.patch (1.9 kB) Andrew White, 10/16/2009 03:11 pm

Associated revisions

Revision 26361
Added by wyhaines about 2 years ago

eval.c: Backport #2592 [ruby-core:27525]; Added an ifndef for WIN32 so that F_GETFD isn't used on that platform. Fixes a build issue. dln.c: Bug #2220 [ruby-core:26117]; Patch to fix dln.c so that extensions work properly under Snow Leopard.

History

Updated by Kirk Haines about 2 years ago

  • Status changed from Open to Closed
  • % Done changed from 0 to 100
This issue was solved with changeset r26361.
Andrew, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.

Also available in: Atom PDF