View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0007829 | MMW v4 | Framework: Scripts/Extensions | public | 2011-05-16 20:18 | 2011-10-02 22:30 |
Reporter | rusty | Assigned To | |||
Priority | immediate | Severity | crash | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Product Version | 4.0 | ||||
Target Version | 4.0 | Fixed in Version | 4.0 | ||
Summary | 0007829: Switching languages --> AV | ||||
Description | Switched languages to Espanol (download) and restarted MM --> AV. | ||||
Additional Information | Submitted 2 Elogs. | ||||
Tags | No tags attached. | ||||
Attached Files | |||||
Fixed in build | 1433 | ||||
related to | 0007846 | closed | Ludek | Cannot install last.fm extension 1.0.0.25 |
related to | 0007867 | closed | jiri | Error dialogs on MM startup have buttons without any text |
related to | 0008199 | closed | petr | Some language files are broken |
related to | 0008548 | closed | peke | On DB Upgrade Permitions are inherited instead updated/renewed |
related to | 0010719 | closed | petr | Crash on skin install |
|
I can't reproduce. Petr, based on the ELs, probably assign to Ludek. |
|
I fixed the AV, but it was caused by another problem, it looks that MM couldn't access file C:\ProgramData\MediaMonkey\Locale\fr\LC_MESSAGES\language.mo that MM needed to delete and extract new content to the file. I also realized that error reporting was turned off, I enabled the error reporting so that you could see the error when installing language. |
|
Note also, user reported that in 1375, upon downloading files, the only file that appears downloaded is \Users\All Users\MediaMonkey\Locale\sk\LC_MESSAGES\language.mo (the others are all missing). |
|
Tested with 1376, and some languages (e.g. CZ) generate the following error: Cannot create file C:\ProgramData\MediaMonkey\Locale\cs\LC_MESSAGES\language.mo Could this be related to 0007846 (installation problem with scrobbler .mmip)? Related tweak: the message dialog has no text in the buttons (see attached). |
|
As discussed over IM, the problem is that something (most probably MM itself) opens language.mo file and then it cannot replace the file. Although I cannot reproduce the problem, the most correct solution would be to update all language MMIP so that language.mo would be replaced only if the file doesn't exists. This covers also possible conflicts when more than one instance of MM is running, because the info from language.mo is used when showing the Options dialog. |
|
Tested further, and I think that your hypothesis is correct. On a couple of occasions (this isn't consistent), after I'd switched languages, I switched nodes in the Tools > Options dialog before accepting the change, and then switched around MM nodes. Then upon restarting, I didn't get the error. I'm baffled as to what specifically causes the error to not occur, though. |
|
Finally I found a better solution that doesn't require any modification of language MMIPs. Fixed in 1377. |
|
Test note: on my system there is both C:\Users\All Users\MediaMonkey AND C:\ProgramData\MediaMonkey. Languages pre-installed with MM appear in AllUsers and languages that are downloaded appear in ProgramData. |
|
This should depend on registry value HKLM\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Common AppData Maybe the value somehow gets changed on your system? |
|
Note I also have both folders. |
|
Possibly related item: one user is receiving 'script engine' errors on language file installation. See attached images. |
|
Tested build 1378 and the errors occur exactly as reported in build 1377. Note: tested on a different machine. both machines were Win7 x64. |
|
I fixed all the language packages so that language.mo file is overwriten only when it doesn't exist and so that language.mo isn't removed when uninstalling language . This is correct and will resolve the problem although it would be valuable to find the real reason of the lock. Jiri is trying to find it as he can reproduce the problem. |
|
I found out that the problem is caused by the fact that the language.mo files are created during installation of MM and so their owner is 'Administrator'. Ordinary users can't edit these file and so the replacement fails. The Ludek's fix should help and in order to be safe, I also modified the installer, so that the language files are created with full permissions. Testing note: installation in the normal and portable mode should be tested to make sure no regression was introduced. |
|
Verified 1384. |
|
This error seems to be occuring again (with a slight variation on the previous error--this time it's associated with context.mo). i.e. install a language vX, and then install vX+1 --> Cannot create file C:\ProgramData\MediaMonkey\Locale\<lang>\LC_MESSAGES\context.mo |
|
I can reproduce the error this way: 1. Right-click MM and 'Run as administrator' and install the language (by double clicking MMIP) and close MM 2. Run MM normally by double-clicking and install the language => error (as expected) |
|
Fixed in build 1433. Testing note: The fix was that it sets file permissions to everyone when copying the file from installer, it means that for already created files the fix doesn't work unless the language is re-installed with admin rights. |
|
Verified 1439 |