329 |
|
|
330 |
let create dirname files = |
let create dirname files = |
331 |
Unix2.safe_mkdir dirname; |
Unix2.safe_mkdir dirname; |
|
Unix2.can_write_to_directory dirname; |
|
332 |
let rec iter files pos files2 = |
let rec iter files pos files2 = |
333 |
match files with |
match files with |
334 |
[] -> |
[] -> |
349 |
| (filename, size) :: tail -> |
| (filename, size) :: tail -> |
350 |
let temp_filename = Filename.concat dirname filename in |
let temp_filename = Filename.concat dirname filename in |
351 |
Unix2.safe_mkdir (Filename.dirname temp_filename); |
Unix2.safe_mkdir (Filename.dirname temp_filename); |
|
Unix2.can_write_to_directory (Filename.dirname temp_filename); |
|
352 |
let fd = FDCache.create temp_filename in |
let fd = FDCache.create temp_filename in |
353 |
let _ = FDCache.local_force_fd fd true in |
let _ = FDCache.local_force_fd fd true in |
354 |
iter tail (pos ++ size) |
iter tail (pos ++ size) |