[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Pingus-CVS] [pingus] push by address@hidden - Use SDL_GetRendererOutput
From: |
pingus |
Subject: |
[Pingus-CVS] [pingus] push by address@hidden - Use SDL_GetRendererOutputSize() instead of window size for screenshots on 2014-07-27 16:36 GMT |
Date: |
Sun, 27 Jul 2014 16:36:52 +0000 |
Revision: 9f6bff042de5
Author: Ingo Ruhnke <address@hidden>
Date: Sun Jul 27 16:36:35 2014 UTC
Log: Use SDL_GetRendererOutputSize() instead of window size for
screenshots
http://code.google.com/p/pingus/source/detail?r=9f6bff042de5
Modified:
/src/engine/display/sdl_framebuffer.cpp
=======================================
--- /src/engine/display/sdl_framebuffer.cpp Sun Jul 27 16:32:00 2014 UTC
+++ /src/engine/display/sdl_framebuffer.cpp Sun Jul 27 16:36:35 2014 UTC
@@ -61,18 +61,26 @@
Surface
SDLFramebuffer::make_screenshot() const
{
- Size size = get_size();
- Surface screenshot(size.width, size.height);
- int ret = SDL_RenderReadPixels(m_renderer, nullptr,
- SDL_PIXELFORMAT_RGBX8888,
- screenshot.get_data(),
- screenshot.get_pitch());
- if (ret != 0)
+ Size size;
+ if (SDL_GetRendererOutputSize(m_renderer, &size.width, &size.height) !=
0)
{
- log_error("%1%", SDL_GetError());
+ log_error("SDL_GetRenderOutputSize failed: %1%", SDL_GetError());
+ return Surface();
}
+ else
+ {
+ Surface screenshot(size.width, size.height);
+ int ret = SDL_RenderReadPixels(m_renderer, nullptr,
+ SDL_PIXELFORMAT_RGBX8888,
+ screenshot.get_data(),
+ screenshot.get_pitch());
+ if (ret != 0)
+ {
+ log_error("%1%", SDL_GetError());
+ }
- return screenshot;
+ return screenshot;
+ }
}
void
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Pingus-CVS] [pingus] push by address@hidden - Use SDL_GetRendererOutputSize() instead of window size for screenshots on 2014-07-27 16:36 GMT,
pingus <=