os: fix cp_all mkdir panic (#8680)
							parent
							
								
									375efb0953
								
							
						
					
					
						commit
						65f2420516
					
				|  | @ -62,7 +62,9 @@ pub fn cp_all(src string, dst string, overwrite bool) ? { | |||
| 		sp := join_path(source_path, file) | ||||
| 		dp := join_path(dest_path, file) | ||||
| 		if is_dir(sp) { | ||||
| 			mkdir(dp) ? | ||||
| 			if !exists(dp) { | ||||
| 				mkdir(dp) ? | ||||
| 			} | ||||
| 		} | ||||
| 		cp_all(sp, dp, overwrite) or { | ||||
| 			rmdir(dp) or { return error(err) } | ||||
|  |  | |||
|  | @ -250,7 +250,7 @@ fn test_mv() { | |||
| 	assert os.exists(expected) && !is_dir(expected) == true | ||||
| } | ||||
| 
 | ||||
| fn test_cp_r() { | ||||
| fn test_cp_all() { | ||||
| 	// fileX -> dir/fileX
 | ||||
| 	// NB: clean up of the files happens inside the cleanup_leftovers function
 | ||||
| 	os.write_file('ex1.txt', 'wow!') or { panic(err) } | ||||
|  | @ -267,6 +267,8 @@ fn test_cp_r() { | |||
| 	assert old2 == new2 | ||||
| 	// recurring on dir -> local dir
 | ||||
| 	os.cp_all('ex', './', true) or { panic(err) } | ||||
| 	// regression test for executive runs with overwrite := true
 | ||||
| 	os.cp_all('ex', './', true) or { panic(err) } | ||||
| } | ||||
| 
 | ||||
| fn test_tmpdir() { | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue