diff options
author | Daniel Silverstone <dsilvers@digital-scurf.org> | 2019-08-01 09:29:22 +0100 |
---|---|---|
committer | Daniel Silverstone <dsilvers@digital-scurf.org> | 2019-08-01 09:29:22 +0100 |
commit | fa64763b0d8c6566eda5f6547e7f2f3e62b77613 (patch) | |
tree | 3dd46b7b425c29118d2753ff329fcdf83fa4cacd | |
parent | 6c951f7a15a46763992685aae238cdab44483cce (diff) | |
download | netsurf-fa64763b0d8c6566eda5f6547e7f2f3e62b77613.tar.gz netsurf-fa64763b0d8c6566eda5f6547e7f2f3e62b77613.tar.bz2 |
browser_history.c: Clamp contents to be 1x1 at min.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
-rw-r--r-- | desktop/browser_history.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/desktop/browser_history.c b/desktop/browser_history.c index d9db0eb18..ad9c50115 100644 --- a/desktop/browser_history.c +++ b/desktop/browser_history.c @@ -456,11 +456,19 @@ nserror browser_window_history_update(struct browser_window *bw, if (bw->window != NULL && guit->window->get_scroll(bw->window, &sx, &sy)) { + int content_height = content_get_height(content); + int content_width = content_get_width(content); + if (content_height < 1) { + content_height = 1; + } + if (content_width < 1) { + content_height = 1; + } /* Successfully got scroll offsets, update the entry */ history->current->page.scroll_x = \ - (float)sx / (float)content_get_width(content); + (float)sx / (float)content_width; history->current->page.scroll_y = \ - (float)sy / (float)content_get_height(content); + (float)sy / (float)content_height; NSLOG(netsurf, INFO, "Updated scroll offsets to %g by %g", history->current->page.scroll_x, history->current->page.scroll_y); |