diff --git a/PrepStep/Form1.cs b/PrepStep/Form1.cs
index af81858..35053af 100644
--- a/PrepStep/Form1.cs
+++ b/PrepStep/Form1.cs
@@ -56,8 +56,8 @@ public partial class Form1 : Form
BuildUi();
Load += (_, _) =>
{
- InizializzaCartellaLavoro();
InizializzaDatabase();
+ InizializzaCartellaLavoro();
};
}
@@ -1004,14 +1004,17 @@ public partial class Form1 : Form
private static readonly string PercorsoImpostazioni = Path.Combine(CartellaImpostazioni, "ultimo_db.txt");
private static readonly string PercorsoImpostazioniCartella = Path.Combine(CartellaImpostazioni, "ultima_cartella_lavoro.txt");
- /// Propone l'ultima cartella di lavoro usata (se ancora esiste su disco) o, la prima
- /// volta, la cartella dell'eseguibile: non richiede mai un CLAUDE.md/repo (a differenza del
- /// vecchio TrovaRadiceRepo), quindi funziona identica anche sull'exe pubblicato standalone
- /// copiato su un'altra macchina. Sempre modificabile con "Cambia cartella..." in fase 1.
+ /// Propone l'ultima cartella di lavoro usata (se ancora esiste su disco) o, se non
+ /// c'è ancora una preferenza salvata (o punta a una cartella cancellata), la cartella dove si
+ /// trova il DB (più sensata dell'eseguibile: quella è dove l'utente tiene il proprio lavoro,
+ /// non dov'è installata la app). Richiede quindi che InizializzaDatabase sia già stata
+ /// chiamata. Sempre modificabile con "Cambia cartella..." in fase 1.
private void InizializzaCartellaLavoro()
{
var ultima = LeggiUltimaCartellaLavoro();
- _cartellaLavoro = ultima is not null && Directory.Exists(ultima) ? ultima : AppContext.BaseDirectory;
+ _cartellaLavoro = ultima is not null && Directory.Exists(ultima)
+ ? ultima
+ : (_dbPath is not null ? Path.GetDirectoryName(_dbPath) : null) ?? AppContext.BaseDirectory;
AggiornaLabelCartellaLavoro();
}