rem: if (robust_rename(src, dst, 0755) != 0 || errno != ENOENT || make_bak_dir(dst) < 0 || robust_rename(src, dst, 0755) != 0)
add: if (robust_rename(src, dst, 0755) != 0 && (errno != ENOENT || make_bak_dir(dst) < 0 || robust_rename(src, dst, 0755) != 0))
context: static int robust_move(char *src, char *dst){	if (robust_rename(src, dst, 0755) != 0 || errno != ENOENT	    || make_bak_dir(dst) < 0 || robust_rename(src, dst, 0755) != 0)		return -1;	return 0;}