We present Obstacle-aware Virtual Circuit geographic Routing (OVCR), a novel routing mechanism for obstacle-aware wireless sensor networks that uses the obstacle-free path computed by the sink to make the greedy forwarding of geographic routing dependable. OVCR discovers obstacle-free paths by the powerful sink as obstacles are detected. To bypass obstacles, the information of obstacle-free paths is forwarded to sensors close to obstacles for finding virtual circuits in a distributed manner. A virtual circuit containing a sequence of relay positions (temporary destinations) is used for obstacle-free data packet forwarding. Data packets can then be forwarded greedily, either by the location of the destination, or the relay position. Simulation results show that OVCR is more dependable since the success rate of packet forwarding is raised and more efficient since the hop count is reduced.