I had always wondered this myself. A recent IGN article cleared it all up for me. I am sure there are cases where actors have done real drugs on camera, but for the most part, even the biggest stoner actors don’t smoke real marijuana.
I kind of find this information to be a little disappointing. I get it. You don’t want Jason Statham doing real crank, but why would you have Seth Rogen smoke fake weed so that he can pretend to act high? Just get him high and there ain’t no pretending about it.

You can’t tell me these 2 weren’t firing it up in the Winnebago between scenes.
Let’s face it, everybody is getting high in Hollywood. As long as the actor is trying to maintain sobriety, and the drug is not heroin or meth, I say make the drugs real! You know Rogen is getting high off set, then immediately stepping on set to get fake high. Streamline the process.