# File lib/dbus/bus.rb, line 821 def run # before blocking, empty the buffers # https://bugzilla.novell.com/show_bug.cgi?id=537401 @buses.each_value do |b| while m = b.pop_message b.process(m) end end while not @quitting and not @buses.empty? ready, dum, dum = IO.select(@buses.keys) ready.each do |socket| b = @buses[socket] begin b.update_buffer rescue EOFError, SystemCallError @buses.delete socket # this bus died next end while m = b.pop_message b.process(m) end end end end