- /* hmh.. */
- if (nrects == 1 && rects->x == 0 && rects->y == 0 &&
- (this->screen->flags & SDL_DOUBLEBUF) &&
- rects->w == this->screen->w && rects->h == this->screen->h)
+ /* for doublebuf forcing on apps */
+ if (nrects == 1 && rects->x == 0 && rects->y == 0
+ && !pdata->app_uses_flip && (this->screen->flags & SDL_DOUBLEBUF)
+ && rects->w == this->screen->w && rects->h == this->screen->h)