support absolute paths
fix bug