Download it now!
Bug 131388 - File save fails when network document is opened on another machine
Summary: File save fails when network document is opened on another machine
Status: UNCONFIRMED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: LibreOffice (show other bugs)
Version:
(earliest affected)
7.0.0.0.alpha0+
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: File-Lock
  Show dependency treegraph
 
Reported: 2020-03-17 14:23 UTC by Samuel Mehrbrodt (CIB)
Modified: 2020-09-05 04:06 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments
Combinations tested (1.05 KB, text/plain)
2020-03-17 14:23 UTC, Samuel Mehrbrodt (CIB)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Samuel Mehrbrodt (CIB) 2020-03-17 14:23:54 UTC
Created attachment 158752 [details]
Combinations tested

1. Put a document on a Windows file share
2. Open that document on a Linux machine
3. Open the same document on a Windows machine (choose read-only in the dialog)
4. Try to save the document on Linux

Result: 
Saving fails

Expected:
Saving should work, since Linux has exclusive write access to that document

Note: This has something to do with system file locking. When disabling the option "UseDocumentSystemFileLocking" on the Windows machine, saving on Linux works fine.

Attached the test protocol.
Comment 1 Mike Kaganski 2020-09-04 08:49:20 UTC
So a guess would be that when opening it read-only on Windows, LibreOffice doesn't use correct mode (read-only, shared) - see CreateFile's dwDesiredAccess and dwShareMode [1]. Note that from Windows share PoV, the file is not open from Linux side, it was atomically opened when read, then was closed, than will be attempted to open for writing later (IIUC the mechanics of Linux file operations). LO only detects the opened state using lock file.

[1] https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-createfilew