summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--screenshot.c8
-rw-r--r--settings_gui.c2
2 files changed, 7 insertions, 3 deletions
diff --git a/screenshot.c b/screenshot.c
index c352844e5..fa94c8acd 100644
--- a/screenshot.c
+++ b/screenshot.c
@@ -376,8 +376,12 @@ void SetScreenshotFormat(int i)
// screenshot generator that dumps the current video buffer
void CurrentScreenCallback(void *userdata, byte *buf, uint y, uint pitch, uint n)
{
- assert(_screen.pitch == (int)pitch);
- memcpy(buf, _screen.dst_ptr + y * _screen.pitch, n * _screen.pitch);
+ for (; n > 0; --n)
+ {
+ memcpy(buf, _screen.dst_ptr + y * _screen.pitch, _screen.width);
+ ++y;
+ buf += pitch;
+ }
}
extern void ViewportDoDraw(ViewPort *vp, int left, int top, int right, int bottom);
diff --git a/settings_gui.c b/settings_gui.c
index 9c158569e..4e7501305 100644
--- a/settings_gui.c
+++ b/settings_gui.c
@@ -174,7 +174,7 @@ static void GameOptionsWndProc(Window *w, WindowEvent *e)
break;
// change screenshot format
- case 30:
+ case 31:
SetScreenshotFormat(e->dropdown.index);
SetWindowDirty(w);
break;