[Libreoffice] fdo#37195, [REVIEW] take two on the "where did my dictionaries go"
Caolán McNamara
caolanm at redhat.com
Thu Sep 1 05:52:28 PDT 2011
So the ooo3migration thing was a red herring alright, so here's my
second stab at fdo#37195
http://cgit.freedesktop.org/libreoffice/core/commit/?id=a78a6e013b8d97891aa2b9c9a5dce64a82dc2f06
a) If CreateProcessServiceFactory is called, then common.rdb of
"Users/YOU/AppData/Roaming/LibreOffice/3/user/extensions/bundled/registry/
com.sun.star.comp.deployment.component.PackageRegistryBackend/common.rdb" is opened mmapped on windows
b) On a new start of an LibreOffice which wants to synchronize new
config over an old config, then it will want do a copy of
"install/share/prereg/bundled/registry/
com.sun.star.comp.deployment.component.PackageRegistryBackend/common.rdb"
over
"Users/YOU/AppData/Roaming/LibreOffice/3/user/extensions/bundled/registry/
com.sun.star.comp.deployment.component.PackageRegistryBackend/common.rdb"
which will fail on windows with error 1224, i.e. ERROR_USER_MAPPED_FILE
c) That aborts the copy_bundled_recursive copy, leaving an old config
pointing to the old location of dictionaries.
d) So for windows at least, CreateProcessServiceFactory shouldn't happen
before copy_bundled_recursive.
This appears to be a (wildly unexpected and impossible to predict)
side-effect of c3ccdabb where it happened to be the case in the past
that CreateProcessServiceFactory didn't get called before
synchronization under windows.
Attached is the backport for 3-4 as this code changed a little between
3-4 and master.
caolanm->Andras: could you arrange to have the attached tested ?
C.
More information about the LibreOffice
mailing list