Name the parent folder in data directory access-denied error

This commit is contained in:
Dan Stillman 2026-10-08 12:52:56 -04:00
parent 338ce732bd
commit c280964d46
4 changed files with 5 additions and 2 deletions

View file

@ -237,7 +237,9 @@ Zotero.DataDirectory = {
let title = Zotero.getString('general.accessDenied');
let msg = Zotero.getString('dataDir.dirCannotBeCreated', [Zotero.appName, dataDir])
+ "\n\n"
+ Zotero.getString('dataDir.checkDirWriteAccess', Zotero.appName);
+ Zotero.ftl.formatValueSync(
'data-dir-check-parent-write-access', { path: PathUtils.parent(dataDir) }
);
// The default location needs to be writable, so don't offer an alternative
if (isDefaultDir) {

View file

@ -1187,6 +1187,7 @@ plugins-blocked-plugin =
.message = This plugin has been disabled by { -app-name }.
data-dir-unsupported-storage = This can happen if the { -app-name } data directory is in a cloud storage folder (OneDrive, Dropbox, etc.) or on a network share.
data-dir-check-parent-write-access = Make sure you have write access to { $path } and that security software isn’t preventing { -app-name } from writing to the disk.
login-manager-reset = { -app-name } was unable to read your saved login information, so it has been reset. Please log in again in the { preferences-pane-account } pane of the { -app-name } settings.

View file

@ -176,7 +176,6 @@ attachmentBasePath.clearBasePath.existingAttachments.plural = %S existing att
attachmentBasePath.clearBasePath.button = Clear Base Directory Setting
dataDir.dirCannotBeCreated = The %S data directory (%S) cannot be created.
dataDir.checkDirWriteAccess = Make sure you have write access to this directory and that security software isn’t preventing %S from writing to the disk.
dataDir.databaseCannotBeOpened = The %S database cannot be opened.
dataDir.checkPermissions = Make sure you have read and write permissions for all files in the %1$S data directory and that security software isn’t preventing %1$S from accessing that directory.
dataDir.moveToDefaultLocation = You may be able to fix this problem by moving the data directory to the new default location in your home directory. %S will automatically detect the new location.

View file

@ -178,6 +178,7 @@ describe("Zotero.DataDirectory", function () {
assert.isTrue(alertStub.calledOnce);
assert.include(alertStub.firstCall.args[2], dataDir);
assert.include(alertStub.firstCall.args[2], `write access to ${parentDir} `);
assert.isFalse(confirmStub.called);
assert.isTrue(quitStub.calledOnce);
assert.isFalse(await IOUtils.exists(dataDir));