The hose doesn't stick out the hole, it is short by about an inch, and it pours its water right into a mess of sound deadening foam inside the hinge pillar. The drain hole is on the underside of the rocker about 1" in right between the bottom 2 fender bolts.
With that being said, if you are getting a swimming pool in your passenger side floorboard, the problem isn't the sunroof drain. If sunroof drains clog, you get slight moisture coming in around the roof and a wet spot on the headliner at one of the corners. If your headliner is dry, your sunroof drains are fine. Your problem is the vent under the cowl panel on the passenger side. It is sealed in with a seam sealer that over time dries up and cracks, and when that happens, any water that goes down the windshield on the right side now has a direct path into the car. It is not something you will necessarily be able to see just by removing the cowl panels. Remove the vent piece, and re-seal it with either some RTV or new seam sealer, and it will solve your water leak.