++ fix e controlli

This commit is contained in:
2026-07-30 17:05:39 +02:00
parent 712336d652
commit 440d63a6b9
54 changed files with 4921 additions and 1322 deletions

View File

@@ -121,10 +121,19 @@ class BackupArchive
//
// Il valore di ritorno si controlla: se il file e' sparito
// fra allFiles() e qui — cancellato da un'altra richiesta,
// o illeggibile per i permessi — addFile() torna false
// senza sollevare, e l'archivio finirebbe con un buco di
// cui nessuno si accorge fino al giorno del ripristino.
if (! $zip->addFile($disk->path($relativePath), self::PREFIX_STORAGE . $relativePath)) {
// o illeggibile per i permessi — addFile() torna false, e
// l'archivio finirebbe con un buco di cui nessuno si
// accorge fino al giorno del ripristino.
//
// La @ non e' pigrizia. Prima di restituire false,
// addFile() emette un warning di PHP ("No such file or
// directory") che il gestore di Laravel trasforma in
// ErrorException: senza sopprimerlo, il messaggio qui sotto
// — quello che dice *quale* file e *perche'* — non verrebbe
// raggiunto mai, e l'amministratore leggerebbe la stringa
// grezza di PHP. Stesso problema, e stessa scelta, del
// close() avvolto in chiudi().
if (! @$zip->addFile($disk->path($relativePath), self::PREFIX_STORAGE . $relativePath)) {
throw new RuntimeException(
'Impossibile aggiungere "' . $relativePath . '" al backup: '
. 'il file non e\' leggibile o e\' stato rimosso durante la creazione.'