In bug 1649604, JSONFile was rewritten to use IOUtils and PathUtils for file IO
and path management. This means that all path operations go through nsIFile
methods. However, sync engines were generating paths that always contained a
forward slash. If that file is a UNC path (i.e., if your profile is located on
a network drive), all IOUtils and PathUtils operations on that drive will fail
due to nsLocalFile::InitWithPath on Windows rejecting paths contaiing a forward
slash with NS_ERROR_FILE_UNRECOGNIZED_PATH. This only occurred with UNC paths
because OS.Path.normalize would normalize forward slashes to backslashes,
except when the path is a UNC path. This meant that you could not use FxA sync
with a profile on a network drive.
Updating these engines to use PathUtils to join the paths instead of hardcoding
forward slashes fixes this issue and allows sync to work with profiles on
network drives.
Differential Revision: https://phabricator.services.mozilla.com/D131166
In bug 1649604, JSONFile was rewritten to use IOUtils and PathUtils for file IO
and path management. This means that all path operations go through nsIFile
methods. However, sync engines were generating paths that always contained a
forward slash. If that file is a UNC path (i.e., if your profile is located on
a network drive), all IOUtils and PathUtils operations on that drive will fail
due to nsLocalFile::InitWithPath on Windows rejecting paths contaiing a forward
slash with NS_ERROR_FILE_UNRECOGNIZED_PATH. This only occurred with UNC paths
because OS.Path.normalize would normalize forward slashes to backslashes,
except when the path is a UNC path. This meant that you could not use FxA sync
with a profile on a network drive.
Updating these engines to use PathUtils to join the paths instead of hardcoding
forward slashes fixes this issue and allows sync to work with profiles on
network drives.
Differential Revision: https://phabricator.services.mozilla.com/D131166
CLOSED TREE
Backed out changeset 55165cf4b7bb (bug 1736175)
Backed out changeset 492f5ca3b592 (bug 1723082)
Backed out changeset ce199e98a0c5 (bug 1741247)
In bug 1649604, JSONFile was rewritten to use IOUtils and PathUtils for file IO
and path management. This means that all path operations go through nsIFile
methods. However, sync engines were generating paths that always contained a
forward slash. If that file is a UNC path (i.e., if your profile is located on
a network drive), all IOUtils and PathUtils operations on that drive will fail
due to nsLocalFile::InitWithPath on Windows rejecting paths contaiing a forward
slash with NS_ERROR_FILE_UNRECOGNIZED_PATH. This only occurred with UNC paths
because OS.Path.normalize would normalize forward slashes to backslashes,
except when the path is a UNC path. This meant that you could not use FxA sync
with a profile on a network drive.
Updating these engines to use PathUtils to join the paths instead of hardcoding
forward slashes fixes this issue and allows sync to work with profiles on
network drives.
Differential Revision: https://phabricator.services.mozilla.com/D131166
Telemetry definition and data review is in bug 1733481
Note: The implementation/test here treats ServiceRequest.logProxySource
as an optional method, in case D127170 hasn't landed yet when this patch
lands. In a follow-up this will be removed.
Differential Revision: https://phabricator.services.mozilla.com/D129683
CLOSED TREE
Backed out changeset 309190b4a49d (bug 1732792)
Backed out changeset 600e6dfd7436 (bug 1732792)
Backed out changeset 834441a08cc0 (bug 1733481)