[0.4.13][NTOS:INBV] Fix screen flash and more (#2821)
authorJoachim Henze <Joachim.Henze@reactos.org>
Fri, 15 Jan 2021 13:29:57 +0000 (14:29 +0100)
committerJoachim Henze <Joachim.Henze@reactos.org>
Fri, 15 Jan 2021 13:29:57 +0000 (14:29 +0100)
- Fix screen flash (CORE-16786);
- Don't process rotating bar if not used.

cherry picked from commit 0.4.15-dev-287-g 319374eb719f675b91e8380e836b31affb824e2b

ntoskrnl/inbv/inbv.c

index f5cd565..cbcf546 100644 (file)
@@ -1277,12 +1277,12 @@ DisplayBootBitmap(IN BOOLEAN TextMode)
 #endif
 
 #ifdef INBV_ROTBAR_IMPLEMENTED
-        if (Bar)
+        if ((TempRotBarSelection == RB_SQUARE_CELLS) && Bar)
         {
             /* Save previous screen pixels to buffer */
             InbvScreenToBufferBlt(Buffer, 0, 0, 22, 9, 24);
             /* Draw the progress bar bit */
-            InbvBitBlt(Bar, 0, 0);
+            BitBltPalette(Bar, TRUE, 0, 0);
             /* Store it in global buffer */
             InbvScreenToBufferBlt(RotBarBuffer, 0, 0, 22, 9, 24);
             /* Restore screen pixels */