Multipath routing in ad hoc networks is a challenging problem. In this paper, we present a new approach to the problem of finding multiple disjoint paths (both edge-disjoint and node-disjoint) in ad hoc networks. Most existing multipath routing protocols are based on AODV or DSR and compute multiple paths with a single route discovery process via a network-wide flooding, which takes a substantial amount of network bandwidth. When node's geographic information is available, routing discovery flooding can be substituted by unicasts and then the routing overhead can be reduced. We propose a Geography based Ad hoc On demand Disjoint Multipath (GAODM) routing protocol in wireless ad hoc networks. Our protocol combines the idea behind the distributed push-relabel algorithm in a flow network with nodes' geographic information in the ad hoc networks. Instead of a blind flooding, an informed and independent unicast decision is made by each node so that the traffic flow for the route discovery is efficiently directed towards the destination. We compare our protocols with AODV and AOMDV. The simulation result shows that 1) GAODM has better ability of finding more disjoint paths than AOMDV, especially when nodes are further apart; 2) GAODM finds shorter paths (in terms of hop count) than AODV and AOMDV due to the use of nodes' geographic information; 3) GAODM incurs much less route discovery overhead than AODV and AOMDV because of the substitution of unicasts for blind flooding.