Bug 146836 - ACCESS2BASE Library does not work with Libreoffice 7.3 rc2
Summary: ACCESS2BASE Library does not work with Libreoffice 7.3 rc2
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Base (show other bugs)
Version:
(earliest affected)
7.3.0.2 rc
Hardware: All Windows (All)
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:7.4.0
Keywords:
: 147195 (view as bug list)
Depends on:
Blocks:
 
Reported: 2022-01-18 11:51 UTC by jorojmaqui
Modified: 2022-02-11 14:03 UTC (History)
8 users (show)

See Also:
Crash report or crash signature:


Attachments
FINCA_ACCESS2BASE (2.75 MB, application/vnd.sun.xml.base)
2022-01-20 20:41 UTC, jorojmaqui
Details
gdb bt (gtk3 rendering) (10.54 KB, text/plain)
2022-01-21 17:56 UTC, Julien Nabet
Details

Note You need to log in before you can comment on or make changes to this bug.
Description jorojmaqui 2022-01-18 11:51:04 UTC
Description:
ACCESS2BASE Library does not work with Libreoffice 7.3 rc2
In previous versions it worked


Steps to Reproduce:
1.I open a docked app and it doesn't work for me.
2.
3.

Actual Results:
pressing the button aborts the statement in access2base

Expected Results:
Pressing the button opens another form


Reproducible: Always


User Profile Reset: No



Additional Info:
?
Comment 1 Julien Nabet 2022-01-20 20:04:35 UTC
Could you provide more details to reproduce this?
Comment 2 jorojmaqui 2022-01-20 20:41:01 UTC
Created attachment 177680 [details]
FINCA_ACCESS2BASE

Here is an example for you to look at.
 pressing a button aborts the access2base command
Comment 3 QA Administrators 2022-01-21 03:38:44 UTC Comment hidden (obsolete)
Comment 4 Julien Nabet 2022-01-21 17:56:07 UTC
Created attachment 177690 [details]
gdb bt (gtk3 rendering)

On pc Debian x86-64 with master sources updated today with gtk3 rendering + macros enabled, I could open the first 2 forms and exit.
But I got an assertion when trying to open the third one.
Comment 5 Julien Nabet 2022-01-21 19:31:11 UTC
Jean-Pierre: thought you might be interested in this one since it concerns Access2Base.
Comment 6 Jean-Pierre Ledure 2022-01-22 15:13:25 UTC
I confirm that when the 3rd form ("F1xEMPRESA") is opened, and when the "Salir" button is pressed:

- in 7.3 an empty message box appears, what should not happen
Version: 7.3.0.2 / LibreOffice Community
Build ID: f1c9017ac60ecca268da7b1cf147b10e244b9b21
CPU threads: 6; OS: Linux 5.4; UI render: default; VCL: kf5 (cairo+xcb)
Locale: en-US (en_US.UTF-8); UI: en-US
Calc: threaded

- in 7.2 the form is closed normally
Version: 7.2.4.1 / LibreOffice Community
Build ID: 27d75539669ac387bb498e35313b970b7fe9c4f9
CPU threads: 6; OS: Linux 5.4; UI render: default; VCL: kf5 (cairo+xcb)
Locale: fr-BE (en_US.UTF-8); UI: en-US
Calc: threaded

The behaviour observed in 7.3 seems related to a weird behaviour of the Basic interpreter.

Steps to reproduce:
1. Open the provided FINCAxFIREBIRD_ejemplo.odb file.
2. Edit Macro sub CERRAR() in module F1xEMPRESA in the odb file. Put a breakpoint on line 4:
      MCLOSE(acForm,"F1xEMPRESA")
3. Open form F1xEMPRESA from the usual Base welcome screen, and press the button "Salir" in the form. Nothing happens because in the background the execution is suspended on the breakpoint.
4. Go to the Basic IDE. The execution is suspended on line 4.
5. Press F8 to debug step by step. The execution umps to line 104 of the DoCmd module of the Access2Base library.
6. Watch in the watch window the 3 arguments of the mClose() function:
      pvObjectType (2)
      pvObjectName ("F1xEMPRESA")
      pvSave ("<missing parameter>")
7. Execute 3x Shift+F8 up to but not including line 108.
8. Press F8 to execute line 108
      mClose = False
         => Suddenly and unexpectedly all 3 arguments became "<Out of Scope>" ??
   Of course, with puzzling arguments, the execution of the Basic code becomes erratic.

In 7.2 the same scenario does not alter the value of the 3 arguments of the mClose() function.


Until other evidence I do not consider that the root cause of the bug is to be found in the Access2Base code.

Of course, I stay open for further discussion.

Anyway I confirm the bug as a confirmed regression.
Comment 7 Julien Nabet 2022-01-22 15:29:09 UTC
Thank you Jean-Pierre for your feedback.

Andreas: thought you might be interested in this one since it must be in basic part then.
Comment 8 Jean-Pierre Ledure 2022-01-24 11:02:53 UTC
(In reply to Jean-Pierre Ledure from comment #6)
Additional info:
> ...
> 
> Steps to reproduce:
> ...
> 8. Press F8 to execute line 108
>       mClose = False

9. Press F8 to execute line 109
10. Press F8 to execute line 110
        If IsMissing(pvSave) Then pvSave = acSavePrompt
    => An error is raised and the execution continues in the error trapping corner of the routine with next value
       - Err = 449, meaning "Argument is not optional" ... Strange ??
Comment 9 Andreas Heinisch 2022-02-03 14:01:58 UTC
Have to check if it is related to Bug 144353.
Comment 10 Andreas Heinisch 2022-02-03 18:09:17 UTC
Unfortunately I cannot test the issue. If I open the form LO immediatley crashes :(

You may upload a new file where this does work in:
Version: 7.4.0.0.alpha0+ (x64) / LibreOffice Community
Build ID: 772460f5cc61035a5b10bdf55a71f2a03f88af73
CPU threads: 6; OS: Windows 10.0 Build 19042; UI render: Skia/Raster; VCL: win
Locale: de-DE (de_DE); UI: en-US
Calc: CL

Thank you!
Comment 11 Julien Nabet 2022-02-03 18:40:13 UTC
Caolán: any idea about the assertion in https://bugs.documentfoundation.org/attachment.cgi?id=177690 ?
4  0x00007f464bcb9118 in weld::Widget::connect_focus_in (this=0x98ad778, rLink=...) at include/vcl/weld.hxx:220
220	        assert(!m_aFocusInHdl.IsSet() || !rLink.IsSet());

(I can submit a new bugtracker just for this part if needed)
Comment 12 Caolán McNamara 2022-02-04 20:35:30 UTC
(In reply to Julien Nabet from comment #11)
> Caolán: any idea about the assertion in
> https://bugs.documentfoundation.org/attachment.cgi?id=177690 ?
> 4  0x00007f464bcb9118 in weld::Widget::connect_focus_in (this=0x98ad778,
> rLink=...) at include/vcl/weld.hxx:220
> 220	        assert(!m_aFocusInHdl.IsSet() || !rLink.IsSet());
> 
> (I can submit a new bugtracker just for this part if needed)

I think https://gerrit.libreoffice.org/c/core/+/129503 will address that, but I don't think it has an effect on the initially reported problem.

Taking my 7-3 build which doesn't have asserts enabled I can reproduce the "an empty message box appears" of comment #6 and if I apply the patch from https://gerrit.libreoffice.org/c/core/+/127387 (tdf#144353, tdf#146281 - Correctly copy the information about variables) then that dialog goes away and I get "the form is closed normally" so maybe this is the same problem as that and that needs to be cherry-picked to 7-3 ?
Comment 13 Rafael Lima 2022-02-04 22:18:02 UTC
I am having a related problem (see bug 147195). Basically, the ScriptForge library stopped working since I upgraded to LO 7.3. Everything was fine until 7.2.5.

However, I was testing my issue on LO 7.4 alpha and all was fine... which made me wonder if this issue could be related to some patch that made it into 7.4 but not into 7.3.

For instance, commit e32d864dbe086d630a8b17c2d376e320aee0253a (related to bug 144353) made it into 7.3 and 7.4. However commit d8428094c7f8b186b37c76fd7e9508a075424f80 (also related to bug 144353), only made it to 7.4.

IMO it's possible that some Basic-related commit that should've been backported to 7.3 ended up not being backported.

Next is the info about my LO 7.4 build:

Version: 7.4.0.0.alpha0+ / LibreOffice Community
Build ID: 80723fccbb03c215bab84b10ac1eefaedef66b7c
CPU threads: 16; OS: Linux 5.13; UI render: default; VCL: kf5 (cairo+xcb)
Locale: pt-BR (pt_BR.UTF-8); UI: en-US
Calc: CL
Comment 14 Julien Nabet 2022-02-05 08:52:27 UTC
(In reply to Caolán McNamara from comment #12)
> ...
> I think https://gerrit.libreoffice.org/c/core/+/129503 will address that,
> but I don't think it has an effect on the initially reported problem.
> 
> Taking my 7-3 build which doesn't have asserts enabled I can reproduce the
> "an empty message box appears" of comment #6 and if I apply the patch from
> https://gerrit.libreoffice.org/c/core/+/127387 (tdf#144353, tdf#146281 -
> Correctly copy the information about variables) then that dialog goes away
> and I get "the form is closed normally" so maybe this is the same problem as
> that and that needs to be cherry-picked to 7-3 ?

I'll give a new try when the patch is pushed.
I could cherry-pick it but since it changes a file in "include", it means a long time of building so prefer to do it one time only.
Comment 15 Commit Notification 2022-02-05 10:58:44 UTC
Caolán McNamara committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/824a84a894755f2ce41f4612f27d2e1110676c6d

Related: tdf#146836 daisy chain together some more event handlers

It will be available in 7.4.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 16 Julien Nabet 2022-02-05 11:40:55 UTC
With master sources updated today, I don't reproduce the assertion anymore, thank you Caolán!

Then I enabled macro, opened the third form and closed it, no problem, it closed without any popup.
Comment 17 Jean-Pierre Ledure 2022-02-09 10:36:42 UTC
Tested on
Version: 7.4.0.0.alpha0+ / LibreOffice Community
Build ID: 845e53ea13b317bd8ef4dc42cd60ea51359f34ab
CPU threads: 6; OS: Linux 5.4; UI render: default; VCL: gtk3
Locale: en-US (en_US.UTF-8); UI: en-US
Calc: threaded

I confirm that the commit solved the Access2Base issue described in the 1st message.

Can the correction please be cherry-picked to LO 7.3 ?

Thanks.
Comment 18 Jean-Pierre Ledure 2022-02-09 13:07:31 UTC
(In reply to Jean-Pierre Ledure from comment #17)
> 
> 
> Can the correction please be cherry-picked to LO 7.3 ?
> 
> Thanks.

PLEASE BEFORE RELEASE OF 7.3.1 (This week ...)
------------------------------
Comment 19 Xisco Faulí 2022-02-10 08:21:33 UTC
(In reply to Jean-Pierre Ledure from comment #17)
> Tested on
> Version: 7.4.0.0.alpha0+ / LibreOffice Community
> Build ID: 845e53ea13b317bd8ef4dc42cd60ea51359f34ab
> CPU threads: 6; OS: Linux 5.4; UI render: default; VCL: gtk3
> Locale: en-US (en_US.UTF-8); UI: en-US
> Calc: threaded
> 
> I confirm that the commit solved the Access2Base issue described in the 1st
> message.
> 
> Can the correction please be cherry-picked to LO 7.3 ?
> 
> Thanks.

The patch just landed in libreoffice-7-3 branch < https://cgit.freedesktop.org/libreoffice/core/commit/?h=libreoffice-7-3&id=1a343e3168c6ac8acf3279307275727e588ddcb7 >
Closing
Comment 20 Xisco Faulí 2022-02-11 14:03:00 UTC
*** Bug 147195 has been marked as a duplicate of this bug. ***