Bug 140835 - FILERELOAD: Reloading doesn't attempt to reload after failing to reload once
Summary: FILERELOAD: Reloading doesn't attempt to reload after failing to reload once
Status: UNCONFIRMED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: LibreOffice (show other bugs)
Version:
(earliest affected)
7.2.0.0.alpha0+
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-03-06 01:18 UTC by Matt K
Modified: 2022-07-28 03:17 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matt K 2021-03-06 01:18:36 UTC
Description:
The UI Menu option for File->Reload only works once.  If it fails the first attempt (e.g. lock file is invalid), further attempts do not try to reload, and no notification is given to the user.

Steps to Reproduce:
1.Create an invalid lock file for a <file> to be opened
2.Open the <file> and select to open as read-only when the UI pops up
3.Click File->Reload and click cancel when the UI pops up
4.Click File->Reload again and observe no pop-up

Actual Results:
File is not reloaded.  If the user made the lock file valid or made <file> writeable, attempting to reload it will still show as read-only.

Expected Results:
File is reloaded (i.e. doesn't show as read-only if <file> is editable)


Reproducible: Always


User Profile Reset: No



Additional Info:
Happens on recent master checkout
Comment 1 Matt K 2021-03-06 01:28:46 UTC
Fails because of the m_pImpl->bReloading check in SfxViewFrame::ExecReload_Impl
Comment 2 Xisco Faulí 2021-04-01 09:03:22 UTC
I can't reproduce it in

Version: 7.2.0.0.alpha0+ / LibreOffice Community
Build ID: c088d26578d1be352efa49bd164a8217627648de
CPU threads: 4; OS: Linux 5.7; UI render: default; VCL: x11
Locale: en-US (en_US.UTF-8); UI: en-US
Calc: threaded

The popup is displayed the second time

Could you please try with a recent daily build ?
Comment 3 Matt K 2021-04-02 04:35:16 UTC
I still repro this.  You should see 2 pop-ups and fail to get a 3rd; the first pop-up is to state the document is locked when opening and to allow to open read-only, the second pop-up is to inform the document is locked after trying to reload, and the third (which fails to show) should be to again inform the document is locked after trying to reload.

I also noticed the following:

1. open a File with read-only filesystem attribute set
2. clear the filesystem read-only attribute
3. performing File->Reload and observe the document is still open as read-only

Version: 7.2.0.0.alpha0+ (x64) / LibreOffice Community
Build ID: 5707ec3303f8215af91aac7d7f7cc29bf67b6c99
CPU threads: 12; OS: Windows 10.0 Build 19041; UI render: Skia/Vulkan; VCL: win
Locale: en-US (en_US); UI: en-US
Calc: CL
Comment 4 Buovjaga 2022-03-17 14:51:46 UTC
(In reply to Matt K from comment #0)
> Description:
> The UI Menu option for File->Reload only works once.  If it fails the first
> attempt (e.g. lock file is invalid), further attempts do not try to reload,
> and no notification is given to the user.
> 
> Steps to Reproduce:
> 1.Create an invalid lock file for a <file> to be opened
> 2.Open the <file> and select to open as read-only when the UI pops up
> 3.Click File->Reload and click cancel when the UI pops up

Step 3 just reloads silently for me. No pop ups.

Version: 7.4.0.0.alpha0+ (x64) / LibreOffice Community
Build ID: f7aeeb2e1a9b90b538a3715c5b73abe52ce7ee68
CPU threads: 2; OS: Windows 10.0 Build 19042; UI render: Skia/Raster; VCL: win
Locale: fi-FI (fi_FI); UI: en-US
Calc: threaded Jumbo
Comment 5 Matt K 2022-07-28 03:17:32 UTC
> Step 3 just reloads silently for me. No pop ups.

I still repro this on latest master.  I'll try to make the repro more detailed:

1. Create an invalid lock file for a <file> to be opened
   - This can be done by copying the lockfile of an open document.  For example, if you have a Writer document foo.odt, the lockfile should exist in the same directory as .~lock.foo.odt#.  Copy that file, close the Writer document, then rename the copied file to .~lock.foo.odt#.  Then, edit .~lock.foo.odt# and change the machine name (which is after the second comma) to "test".
2. Open the <file> and select to open as read-only when the UI pops up
   - Open foo.odt and you should see a pop-up titled "Document in Use".  Click the button for "Open Read-Only"
3. Click File->Reload and click cancel when the UI pops up
   - You should see a pop-up titled "Document in Use".  Click the button for "Cancel"
4. Click File->Reload again and observe no pop-up