Dominic Marks wrote:
--
require 'net/imap'imap = Net::IMAP.new('localhost', 993, true)
imap.authenticate('LOGIN','dom','mypassword')
imap.examine('INBOX')
imap.search(['SINCE','01-Jan-2000']).each do |msg_id|
puts msg_id
imap.fetch(msg_id, 'ENVELOPE')[0].attr['ENVELOPE']
end
--This code will cause Ruby to core dump with a bus error after a number
of fetches. The number is not constant. Garbage collector acting up, or
am I at fault?
No, it's a bug, either in one of the included packages (socket, monitor, digest/md5 or openssl) or a bug in Ruby itself. If I were a betting man, I'd bet on monitor (synchronize), but that's a guess.
Which version of Ruby, btw? The Changelog indicates that there were a few touchups since 1.8.2.
Regards,
Dan