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

BeginPaint/IntBeginPaint doesn't clear flags causing drawing problems

    XMLWordPrintable

Details

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

    Description

      When BeginPaint/IntBeginPaint gets called and the Window->state has the WNDS_SENDERASEBACKGROUND flag set, the flags WNDS_SENDERASEBACKGROUND and WNDS_ERASEBACKGROUND are cleared like they should be. But when/if the WM_ERASEBKGND gets sent and the application returns 0 from the function, both WNDS_SENDERASEBACKGROUND and WNDS_ERASEBACKGROUND gets reset. This causes drawing problems for RedrawWindow and InvalidateRect the next time those funtions are called because WNDS_SENDERASEBACKGROUND has already been set. This could lead to unwanted WM_ERASEBKGND messages being sent, especially if those function don't want them.

      Attachments

        1. FullSizeRender.MOV
          6.87 MB
          simonelombardo
        2. IMG_0213.MOV
          5.70 MB
          simonelombardo
        3. painting_no_invalidate_on_updatenow_properFormat.patch
          0.5 kB
          reactosfanboy
        4. painting_no_invalidate_on_updatenow.patch
          1.0 kB
          simonelombardo

        Issue Links

          Activity

            People

              bug zilla Bug Zilla
              mudhead mudhead
              Votes:
              3 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated: