From: Ian Jackson Date: Fri, 3 Jul 2009 19:32:48 +0000 (+0100) Subject: Set page0_rgbimage when taking many screenshots X-Git-Tag: 1.9.2~54^2~5 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~yarrgweb/git?p=ypp-sc-tools.web-live.git;a=commitdiff_plain;h=ad71c2a5bfcc29289b2f94324544c3d1a186751b Set page0_rgbimage when taking many screenshots --- diff --git a/pctb/pages.c b/pctb/pages.c index c5cc941..482c959 100644 --- a/pctb/pages.c +++ b/pctb/pages.c @@ -553,6 +553,7 @@ static void prepare_ypp_client(void) { void take_screenshots(void) { Snapshot *current=0, *last=0; + RgbImage *page0_store; prepare_ypp_client(); @@ -561,6 +562,8 @@ void take_screenshots(void) { wait_for_stability(¤t,0, send_pgup_many, "paging up to top of commodity list..."); + page0_rgbimage= page0_store= alloc_rgb_image(current->w, current->h); + /* now to actually page down */ for (;;) { debugf("paging page %d\n",npages); @@ -569,8 +572,8 @@ void take_screenshots(void) { fatal("Paging down seems to generate too many pages - max is %d.", MAX_PAGES); - page_images[npages]= convert_page(current, 0); - free_snapshot(&last); last=current; current=0; + page_images[npages]= convert_page(current, page0_store); + free_snapshot(&last); last=current; current=0; page0_store=0; debugf("PAGING page %d converted\n",npages); @@ -592,6 +595,7 @@ void take_screenshots(void) { debugf("PAGING all done.\n"); progress_log("collected %d screenshots.",npages); + assert(!page0_store); } void take_one_screenshot(void) {