Open Bug 949712 Opened 11 years ago Updated 2 years ago

Invalid Local Directory path for Message Storage

Categories

(Thunderbird :: Account Manager, defect)

24 Branch
x86
Windows Vista
defect

Tracking

(Not tracked)

UNCONFIRMED

People

(Reporter: dennis.aspe, Unassigned)

References

Details

(Whiteboard: [workaround in comment 20])

Attachments

(4 files)

Attached image serversettings.jpg
User Agent: Mozilla/5.0 (Windows NT 6.0; rv:25.0) Gecko/20100101 Firefox/25.0 (Beta/Release) Build ID: 20131112160018 Steps to reproduce: The used version of Thunderbird is 24.2.0; Adding a mailaccount to Thunderbird; Right Mouse click on new emailaccount > Settings... > Account Settings > Sever settings > Message Storage > Browse Local direcotry Actual results: Warnings Message appears: 'The Local Directory path "D:\Thunderbird_mail\imap\imap is invalid. Please pick a different directory.' Directory 'D:\Thunderbird_mail\imap\' was selected. Only directory 'D:\Thunderbird_mail\imap\' exists. Directory 'D:\Thunderbird_mail\imap\imap' doesn't exists. Expected results: The new directory shoud be used as the local directory.
The warning is by change of bug 750781(healthy check of mail directory setting). See bug 921410(expected warning case). See also bug 921371(wrong warning case), and bug 946876(successor of bug 921371). > Warnings Message appears: 'The Local Directory path "D:\Thunderbird_mail\imap\imap is invalid. Warning on 'D:\Thunderbird_mail\imap\imap' means account definition like next already exists in prefs.js if ordinal environment. mail.server.server#.directory-rel=[ProfD]../ ... /../D:/Thunderbird_mail/imap/imap mail.server.server#.directory = D:\Thunderbird_mail\imap\imap > Only directory 'D:\Thunderbird_mail\imap\' exists. > Directory 'D:\Thunderbird_mail\imap\imap' doesn't exists. > Directory 'D:\Thunderbird_mail\imap\' was selected. (shown at server settings panel) As known by UI of Tb for "Local Direcctory:" setting in Server Settings, "Local Direcctory:" can be chosen via directory picker panel only. And, if "Local Direcctory:" setting of an account is altered by user, restart of Tb is forced. How did you generate the state of "mail directory of an existent account is non-standard location" and the state of "mail directory of an existent account doesn't exist"? You intentionally or accidentally deleted D:\Thunderbird_mail\imap\imap after account creation in Tb? > Only directory 'D:\Thunderbird_mail\imap\' exists. D:\Thunderbird_mail is your Tb's profile directory? Account/server like next is already defined? > mail.server.server#.directory-rel=[ProfD]../../ ... /D:/Thunderbird_mail/imap > mail.server.server#.directory = D:\Thunderbird_mail\imap Did you alter mail.root.imap-rel setting manually? Following? - D:\Thunderbird_mail is your Tb's profile directory - mail.root.imap-rel = [ProfD]imap - create an IMAP account in Tb, with hostname=imap - accessed Tb's account settings => warning was issued
This seems to be a different problem than bug 921410. There was a warning about "not safe directory". This one is about "invalid directory" and is the first one I have seen since bug 750781. There are different checks why TB would think the directory is invalid, and those were added in bug 577775. The path must: - exist - be a directory - be readable and writable - must not be a special Windows name (like NUL, listed in patch in bug 577775) The reporter here says TB is trying to access a directory (imap/imap) that does not exist (so that can be the cause of the warning), however the user claims he does not tell TB to use such a directory.
Dennis, can you attach as screenshot of the dialog where you choose the directory? So that we can see what the folder hierarchy is on drive D: and what is in D:\Thunderbird_mail\imap.
Flags: needinfo?(dennis.aspe)
Attached image Server settings
Flags: needinfo?(dennis.aspe)
(In reply to :aceman from comment #2) > The reporter here says TB is trying to access a directory (imap/imap) that > does not exist (so that can be the cause of the warning), however the user > claims he does not tell TB to use such a directory. That's correct as shown in the screenshots I uploaded. The directory D:\Thunderbird_mail\imap is empty. (In reply to WADA from comment #1) > As known by UI of Tb for "Local Direcctory:" setting in Server Settings, > "Local Direcctory:" can be chosen via directory picker panel only. > And, if "Local Direcctory:" setting of an account is altered by user, > restart of Tb is forced. First I added my mailaccount to TB. Next I waited till TB synchronised my account. Then I tried to change the Local Directory. I didn't change anything else. > How did you generate the state of "mail directory of an existent account is > non-standard location" and the state of "mail directory of an existent > account doesn't exist"? Wada what do you mean? > You intentionally or accidentally deleted D:\Thunderbird_mail\imap\imap > after account creation in Tb? The directory D:\Thunderbird_mail\imap\imap never existed nor is selected. The previous (and current) Local Directory was (is) the default one. > Did you alter mail.root.imap-rel setting manually? I did't change anything else. > - D:\Thunderbird_mail is your Tb's profile directory No I use the default one. I only tried to change the Local Directory. Some extra information. Sometimes, If I try enough times (without restrarting TB) the directory change to D:\Thunderbird_mail\imap works. Why I don't know.
OK, on the new screenshots everything looks fine. There is only D:\Thunderbird_mail\mail . Can you check that TB really has READ AND WRITE permissions to this folder? Is D: a local disk drive (partition) or is it some network shared volume?
(In reply to :aceman from comment #7) > OK, on the new screenshots everything looks fine. There is only > D:\Thunderbird_mail\mail . Can you check that TB really has READ AND WRITE > permissions to this folder? Yes, TB has both persmissions to the directory. > Is D: a local disk drive (partition) or is it some network shared volume? D: is as local disk drive. Extra information: If I change the Local Directory to D: the warning doesn't appear. Maybe this can also help. In the error console the following 3 messages are shown in the Messages tab: - Could not read chrome manifest 'file:///C:/Program%20Files/Mozilla%20Thunderbird/chrome.manifest'. - Could not read chrome manifest 'file:///C:/Program%20Files/Mozilla%20Thunderbird/extensions/%7B972ce4c6-7e08-4474-a285-3208198ce6fd%7D/chrome.manifest'. - While creating services from category 'profile-after-change', could not create service for entry 'Disk Space Watcher Service', contract ID '@mozilla.org/toolkit/disk-space-watcher;1' The Warning tab of the Error Console is empty.
If you create any new directory, e.g. D:\Thunderbird_mail\mail2 or D:\Thunderbird_mail2, will TB accept it as Local Directory?
I think I have figured it out the problem. When select the directory D:\Thunderbird_mail\imap I do the following: Method 1: If I enter the folder D:\Thunderbird_mail\imap and than push the button "Select folder" (loose translation) the warning appears. Method 2: When I enter the directory D:\Thunderbird_mail and than select the folder imap whitout entering it, the warning doesn't appear. TB accept the directory D:\Thunderbird_mail\imap. One strange thing: After the directory D:\Thunderbird_mail\imap is accpeted and I wanna change the Local Directory again, the 'Select Local Directory' dialog opens from the directory D:\Thunderbird_mail\imap. If I do nothing accept confirming the same directory TB will accept it. This seems locigal, however this is the same as Method 1 and Method 1 doesn't work.
(In reply to dennis.aspe from comment #10) > Method 1: > If I enter the folder D:\Thunderbird_mail\imap and than push the button > "Select folder" (loose translation) the warning appears. How do you "enter" the folder? You can't write it directly. You first push the button ("Browse") and choose the folder in the dialog. Do you do something differently?
(In reply to :aceman from comment #11) > How do you "enter" the folder? You can't write it directly. You first push > the button ("Browse") and choose the folder in the dialog. Do you do > something differently? I push the button "Browse". Then I use my mouse the navigate to the folder D:\Thunderbird_mail\imap. For me it is possible to click 2 times on the folder imap and enter it. Just the same as I click 2 times on the folder Thunderbird to enter that directory.
Aha! You typed at PICKER dialog which was shown by OS via Tb's request, so name of non-existent directory was passed from OS to Tb. Because PICKER dialog of OS(Win), OS doesn't create file which is typed in file name field. "Creation of new directory at the PICKER dialog" is done by; 1. At directory list pane which is currently shown by OS(similar to Windows Explorer), request "new", type directory name in "name box". This is same operation in Windows Explorer. (i.e. OS uses Windows Explorer in dialog) 2. Select the created directory at the PICKER dialog => name of the newly created directory is shown at file name field of PICKER dialog
Tb expects existent one, because PICKER dialog. (a) For some users, the PICKER dialog is a kind of file name input field. (b) For other users, the PICKER dialog is "dialog to select a directory", so if he wants new directory, creates it at the dialog. So, no problem if (b), but phenomenon reported by this bug happens if (a).
Unable to reproduce in Tb 24.2.0 on Win-XP. Even if string is typed in "folder name" field, "directory shown at Local Directory: after OK" was "directory selected at directory list in PICKER dialog". And, can not alter string in "Local Directory:" field in "Server Settings". i.e. Unable to request non-existent directory. It looks following in Tb 24.2.0 on Win-XP. "ffolder name field in PICKER dialog" is merely feed back of current directory selection. "Currently selected directory" is always returned to caller(==Thunderbird). > Method 1: > If I enter the folder D:\Thunderbird_mail\imap and than push the button "Select folder" > (loose translation) the warning appears. Warning on which? D:\Thunderbird_mail D:\Thunderbird_mail\imap D:\Thunderbird_mail\imap\imap (your original report) other What action at where do you call "I enter the folder D:\Thunderbird_mail\imap"? After your "push the button Select folder", what directory was shown in "Local Directory:" field of Server Settings of Tb?
(In reply to Dennis from comment #5) > Created attachment 8347612 [details] > selectLocalDirectory.jpg It looks different from standard directory picker dialog on MS Win... It's standaed directory picker on Vista? By add-on? If so, can you reproduce your problem with -safe-mode of Tb? "Mappen" = Mapped? Mapped directory, Symbolic link ...?
(In reply to WADA from comment #16) > It's standaed directory picker on Vista? It's the standard directory picker on Vista. (The dutch version) > By add-on? If so, can you reproduce your problem with -safe-mode of Tb? The problem is the stame in safe-mode. > "Mappen" = Mapped? Mapped directory, Symbolic link ...? "Mappen" is dutch voor directory. I use the english version of TB. (The problem also exist in the dutch version of TB on my computer. I installed the english version for debugging with you guys.) (In reply to WADA from comment #15) > And, can not alter string in "Local Directory:" field in "Server Settings". To make clear. I don't type anything. First I push the button "Browse". Then I browse to the directory I wanna use as Local Directory. I think my Comment #10 explains it well. > What action at where do you call "I enter the folder When I say enter I mean click 2 times with the mouse on the folder. > After your "push the button Select folder", what directory was shown in > "Local Directory:" field of Server Settings of Tb? It depends. If I use Method 1 the new correct local directory is used (D:\Thunderbird_mail\imap). If I use method 2 the warning is shown and the previous (default) local directory is shown.
Attached file walkthrough.pdf
An visual explanation of Method 1 and 2 ( Comment #10 )
Thanks for the pdf, we can now try it precisely :) One note: in the "One strange thing" scenarion, the filed "Map" is empty. In Method 1, it contains the word "imap". That may be the difference. However, I have tried the steps on Win 7 and I still can't see the problem.
(In reply to :aceman from comment #19) > One note: in the "One strange thing" scenarion, the filed "Map" is empty. In > Method 1, it contains the word "imap". That may be the difference. I tried method 1 again, but before pushing the button to accpent the directory D:\Thunderbird_mail\imap I remove the text imap in the filed "Map". I don't get the warning and the new directory D:\Thunderbird_mail\imap is accepted. The problem seems to be the word "imap" in the filed "Map" field. It also explains why TB search for the directory D:\Thunderbird_mail\imap\imap that doesn't exist.
(In reply to Dennis from comment #20) > The problem seems to be the word "imap" in the filed "Map" field. Who put the string of "imap" in Map:" field of "Select Local Directory" dialog? You? Tb/OS? What string is shown in the "Map:" field when you select other directory at the dialog, for example, existent E:\ ... \XYZ. Is XYZ shown in "Map:" field by OS?
It is put there by the system file choosing dialog. I have seen it on Win7. However, even if the field (It is "Folder" on English Win7) is filled in, I could not see the bug. So either the reporter is doing some surplus click that we do not yet know about, or it is some Vista quirk?
(In reply to :aceman from comment #22) > So either the reporter is doing some surplus click > that we do not yet know about, or it is some Vista quirk? I'm not doing anything extra. I also installed TB on my Windows 7 x64. Iused the same settings and I did the same actions. In Win 7 the Warning screen doesn't appear. I will try to test the problem on a clean Win Vista.
I tested TB with a clean Vista. It has the same problem.
Neil, could this be a problem of the file picker XUL widget? Maybe it needs some Vista specific hacks in the backend code to report the chosen path properly? Can we move this to Toolkit component?
Flags: needinfo?(neil)
Whiteboard: [workaround in comment 20]
(In reply to aceman from comment #26) > Neil, could this be a problem of the file picker XUL widget? Maybe it needs > some Vista specific hacks in the backend code to report the chosen path > properly? Can we move this to Toolkit component? It appears to be a bug in the Vista folder browser dialog, so we might want to work around it in the widget backend by detecting that the dialog returns a non-existent folder whose last two components are the same.
Flags: needinfo?(neil)
See Also: → 1412609
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: