Commit a6b1de0
committed
libsql-sqlite3: Sync ext/misc/fileio.c symlink fixes from 3.46.1
The 3.46.1 merge updated shell8.test (adding the symlink extraction
tests shell8-3.x) and the bundled MultipleCiphers fileio.c, but left
libsql-sqlite3/ext/misc/fileio.c at 3.44.0. That file is embedded into
the CLI shell via 'INCLUDE ../ext/misc/fileio.c', so '.ar -x' ran the
stale writeFile() and the new tests failed with
'failed to create symlink: link1'.
Bring writeFile() in line with upstream 3.46.1:
- Skip utimes() on symbolic links. utimes() follows the link to its
target; the archive only contains link1 -> file1 (no file1), so the
dangling link made utimes() fail and broke the first extraction
(shell8-3.2).
- unlink(zFile) before symlink() so re-extraction does not fail with
EEXIST (shell8-3.3).1 parent 8cedfe2 commit a6b1de0
1 file changed
Lines changed: 16 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
372 | 372 | | |
373 | 373 | | |
374 | 374 | | |
375 | | - | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
376 | 378 | | |
377 | 379 | | |
378 | 380 | | |
| |||
458 | 460 | | |
459 | 461 | | |
460 | 462 | | |
461 | | - | |
462 | | - | |
463 | | - | |
464 | | - | |
465 | | - | |
466 | | - | |
467 | | - | |
| 463 | + | |
| 464 | + | |
| 465 | + | |
| 466 | + | |
| 467 | + | |
| 468 | + | |
| 469 | + | |
| 470 | + | |
| 471 | + | |
| 472 | + | |
| 473 | + | |
| 474 | + | |
| 475 | + | |
468 | 476 | | |
469 | 477 | | |
470 | 478 | | |
| |||
0 commit comments