fix: portable folder — stop storing absolute database paths
Moving the folder (C:\OpsLog → D:\OpsLog, or onto a stick) broke everything: config.json and each profile's logbook path were absolute, so on the new machine the pointer named a drive that no longer applied. The logbook case was the dangerous one. db.Open CREATES what is missing, so if the stale C: path happened to be creatable, the operator silently got a NEW EMPTY logbook instead of an error — with their QSOs sitting untouched in the folder they had just copied. A path inside the application folder is now stored relative to it and resolved against the current location at read time. A path OUTSIDE it (a synced folder, a chosen drive) stays absolute and untouched — that is a deliberate choice; it is only re-rooted when it has gone missing AND a file of the same name exists in this install's data folder, i.e. the copied-folder case. With no such twin the path is left alone so the failure is reported rather than papered over with an unrelated database. Both rules are pinned by tests.
This commit is contained in:
+4
-2
@@ -5,12 +5,14 @@
|
||||
"en": [
|
||||
"Column layouts (widths, order, hidden columns) now stick — five faults were undoing them.",
|
||||
"Recent QSOs keeps a separate column layout in the Main tab and in its own tab — the pane is half as wide there.",
|
||||
"ACOM and SPE amplifiers can follow OpsLog's frequency, on a second COM port (Settings → Amplifier)."
|
||||
"ACOM and SPE amplifiers can follow OpsLog's frequency, on a second COM port (Settings → Amplifier).",
|
||||
"Portable folder: moving OpsLog to another drive or PC (C:OpsLog → D:OpsLog) no longer loses the databases — paths inside the folder are now stored relative to it."
|
||||
],
|
||||
"fr": [
|
||||
"Les dispositions de colonnes (largeurs, ordre, colonnes masquées) tiennent enfin — cinq défauts les défaisaient.",
|
||||
"Les QSO récents gardent une disposition de colonnes distincte dans l'onglet Principal et dans leur propre onglet — le volet y est deux fois moins large.",
|
||||
"Les amplificateurs ACOM et SPE peuvent suivre la fréquence d'OpsLog, sur un second port COM (Réglages → Amplificateur)."
|
||||
"Les amplificateurs ACOM et SPE peuvent suivre la fréquence d'OpsLog, sur un second port COM (Réglages → Amplificateur).",
|
||||
"Dossier portable : déplacer OpsLog sur un autre disque ou un autre PC (C:OpsLog → D:OpsLog) ne fait plus perdre les bases — les chemins internes au dossier sont désormais enregistrés relativement à celui-ci."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user