Uploaded image for project: 'Core ReactOS'
  1. Core ReactOS
  2. CORE-16716

[RAPPS] Simultaneous downloads will assert or cause flickering

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Major
    • None
    • Applications
    • None

    Description

      ReactOS original version reported:  ReactOS 0.4.13-RC (Build 20200224-0.4.13-RC-47-g138d9ac)

      ReactOS current version reported: ReactOS 0.4.15-x86-dev (Build 20240701-0.4.15-dev-8258-gc9aca50) (Commit c9aca501e481bdafe35e6270e86f3a4f600e4de1)

      Description and Steps to reproduce:

      At the moment, Rapps (ReactOS store) is not designed to support simultaneous downloads. Reproducible under Windows too. It fails when trying to do two possible scenarios:

      A. Trying to invoke two downloads of the same file. For example: Click two times to the Install button or double click on some software listed, for example, LibreOffice.
        

      1. Open rraps
      2. Double click twice the same software
      3. A debug assertion appears (Att 1): You can ignore, retry or abort.
        1. "Abort" will end the rapps.exe process nicely.
        2. "Ignore" will open two download windows, one responsive and the second "not at all". The first window will show the info of the two downloads at the same time. That will show the "flickering or blinking" of the downloading bar. (See CORE-16716.webm). If you cancel the 1st window, the assert will appear again and won't be ignored. If you cancel the 2nd window, both windows will end, but the debug assert appears anyway. If we do
        3. "Retry" will open the 2nd download window, and the first one will became empty/template. Both are cancelable and shouldn't appear any assert. The empty window will remain until you close it.

        1. If we do "Ignore", Cancel the Second window and then, Retry, a new assert will appear. RAPPS-Assertion2.txt 

      B. Trying to download two different software downloads at the same time. For example: LibreOffice and Firefox 48. Close similarities about what happens with the thing before.

      Att 1:

      err:(win32ss/user/user32/windows/messagebox.c:1048) MessageBox: L"Debug Assertion Failed!\n\nFile: /srv/buildbot/worker_data/Build_GCCLin_x86/build/sdk/lib/atl/atlwin.h\nLine: 1554\n\nm_hWnd == 0\n\n(Press Retry to debug the application)" 

      --------------------------------------------------------------------------------------------------------------

      Two cents: There can be three possible solutions for this ticket.

      1. Let the software to check before a software is going to be downloaded if it's already downloading, to avoid to the user to have the option to open two download instances of the same software at the same time and if there are different software, add them to the queue as if they are clicked to install checkboxing them (this in the software works, one by one).
      2. Let the software to avoid the user to click the main GUI when the "download window" is opened. That will avoid simultaneous downloads and any other interaction.
      3. Don't permit to have two download windows at the same time.
      4. Same as first one, but with simultaneous downloads in a queue. That would need the possibility of multiple downloads (in background?) at the same time and the non linear "installing" process once it's finished.

      Attachments

        1. RAPPS-Assertion2.txt
          11 kB
        2. image-2024-07-02-14-48-50-162.png
          image-2024-07-02-14-48-50-162.png
          12 kB
        3. image-2024-07-02-14-48-09-330.png
          image-2024-07-02-14-48-09-330.png
          12 kB
        4. debug.log
          460 kB
        5. CORE-16716.webm
          518 kB
        6. Captura desde 2024-07-02 14-51-12.png
          Captura desde 2024-07-02 14-51-12.png
          58 kB
        7. Att2.png
          Att2.png
          12 kB
        8. 0.4.15-dev-791-g6d7ebc2_itisStillHappening.webm
          281 kB

        Issue Links

          Activity

            People

              bug zilla Bug Zilla
              julenuri julenuri
              Votes:
              3 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated: