See:
http://en.wikipedia.org/wiki/Royal_Dutch_Shell_environmental_issueshttp://en.wikipedia.org/wiki/ExxonMobil#Environmental_recordhttp://en.wikipedia.org/wiki/Chevron_Corporation#Controversyhttp://en.wikipedia.org/wiki/Hess_Corporation#Environmental_recordRefiner explosions, nonstop violations of EPA regulations (often cheaper to violate and pay puny fine if/when caught), oil spills, fraud, forging safety/environmental records, dumping toxins in water supply, human righs violations, supporting genocide, supporting corrupt government in third world.
Sierra Club did a comparison among oil companies and ironically BP ranked as one of the best (only BP and Sunoco accept global warming is real):
http://www.sierraclub.org/sierra/pickyourpoison/All the major oil companies are pure evil. Reduce your overall consumption anyway you can to make a larger difference.
Consider buying an electric vehicle as your next vehicle.
The other thing to consider is the elasticity of commodity prices. Say hypothetically tomorrow gasoline buying at BP stations declined 50%. What happens well obviously that means more buying at other gasoline stations. The demand didn't go away. Gasoline isn't something you can choose to use less like a luxury (boycotting radio, or movies, or Disney). So where do those other gas stations get the extra gas from ..... from more BP oil. Since demand doesn't go away rather shifts from one station to another there is no effect on boycott. Finally the owner operators @ BP stations will need to lower their prices (cutting into their profits not BP) to avoid going out of business thus the prices come down at BP stations and rise at competitor stations (taking advantage of higher sales) eventually enough of a differential appears ($2.87 at Exxon but $2.69 at BP) that people flow back to BP station.
End result negible change in market share, no change in BP oil sold, and big losses at BP station owners who simply had the bad luck that "their" brand was the one that fucked up this time.