Oil gains as market buffeted by supply worries