This fix seems pretty straightforward to me, but review would be appreciated in case the implementation that was causing this problem was done for a good reason.
If you have a singular association that is not guaranteed to be populated, when trying to include past that the preloading stops if the first returned value was nil.
user has_one lunch lunch has_many tasty_snacks
User.find(:all, :include => {:lunch => :tasty_snacks})
If the first user returned from the find does NOT have a lunch, tasty_snacks are not loaded for any of the users, even if they have lunches.