chiark
/
gitweb
/
~yarrgweb
/
ypp-sc-tools.main.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Store full-colour image with every screenshot
[ypp-sc-tools.main.git]
/
pctb
/
pages.c
diff --git
a/pctb/pages.c
b/pctb/pages.c
index 482c959c24261cf541ca0ea4e99b63ddf7e51e4e..b3ddceba81f921c2dc1d46661053e77da3215680 100644
(file)
--- a/
pctb/pages.c
+++ b/
pctb/pages.c
@@
-43,7
+43,6
@@
CanonImage *page_images[MAX_PAGES];
int npages;
CanonImage *page_images[MAX_PAGES];
int npages;
-RgbImage *page0_rgbimage;
const char *ocean, *pirate;
const char *ocean, *pirate;
@@
-349,7
+348,7
@@
static void wait_for_stability(Snapshot **output,
last=*output; *output=0;
} else if (!identical(*output,last)) {
debugf("PAGING wait_for_stability changed...\n");
last=*output; *output=0;
} else if (!identical(*output,last)) {
debugf("PAGING wait_for_stability changed...\n");
- free
(
last); last=*output; *output=0;
+ free
_snapshot(&
last); last=*output; *output=0;
nidentical=0;
if (!with_keypress) {
min_interval *= 3.0;
nidentical=0;
if (!with_keypress) {
min_interval *= 3.0;
@@
-494,11
+493,10
@@
static void set_focus_commodity(void) {
debugf("PAGING raise_and_set_focus done.\n");
}
debugf("PAGING raise_and_set_focus done.\n");
}
-static CanonImage *convert_page(Snapshot *sn
, RgbImage *ri
) {
+static CanonImage *convert_page(Snapshot *sn) {
CanonImage *im;
fwrite_ppmraw(screenshot_file, sn);
CanonImage *im;
fwrite_ppmraw(screenshot_file, sn);
- if (ri) memcpy(ri->data, sn->data, ri->h * ri->w * 3);
unsigned char *pixel= sn->data;
CANONICALISE_IMAGE(im, sn->w, sn->h, {
unsigned char *pixel= sn->data;
CANONICALISE_IMAGE(im, sn->w, sn->h, {
@@
-523,7
+521,7
@@
static void prepare_ypp_client(void) {
raise_and_get_details();
wait_for_stability(¤t,0,0, "checking current YPP client screen...");
raise_and_get_details();
wait_for_stability(¤t,0,0, "checking current YPP client screen...");
- test= convert_page(current
, 0
);
+ test= convert_page(current);
find_structure(test, &max_relevant_y);
check_correct_commodities();
Rect sunshine= find_sunshine_widget();
find_structure(test, &max_relevant_y);
check_correct_commodities();
Rect sunshine= find_sunshine_widget();
@@
-553,7
+551,6
@@
static void prepare_ypp_client(void) {
void take_screenshots(void) {
Snapshot *current=0, *last=0;
void take_screenshots(void) {
Snapshot *current=0, *last=0;
- RgbImage *page0_store;
prepare_ypp_client();
prepare_ypp_client();
@@
-562,8
+559,6
@@
void take_screenshots(void) {
wait_for_stability(¤t,0, send_pgup_many,
"paging up to top of commodity list...");
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);
/* now to actually page down */
for (;;) {
debugf("paging page %d\n",npages);
@@
-572,8
+567,8
@@
void take_screenshots(void) {
fatal("Paging down seems to generate too many pages - max is %d.",
MAX_PAGES);
fatal("Paging down seems to generate too many pages - max is %d.",
MAX_PAGES);
- page_images[npages]= convert_page(current
, page0_store
);
- free_snapshot(&last); last=current; current=0;
page0_store=0;
+ page_images[npages]= convert_page(current);
+ free_snapshot(&last); last=current; current=0;
debugf("PAGING page %d converted\n",npages);
debugf("PAGING page %d converted\n",npages);
@@
-595,7
+590,6
@@
void take_screenshots(void) {
debugf("PAGING all done.\n");
progress_log("collected %d screenshots.",npages);
debugf("PAGING all done.\n");
progress_log("collected %d screenshots.",npages);
- assert(!page0_store);
}
void take_one_screenshot(void) {
}
void take_one_screenshot(void) {
@@
-603,8
+597,7
@@
void take_one_screenshot(void) {
prepare_ypp_client();
wait_for_stability(¤t,0,0, "taking screenshot...");
prepare_ypp_client();
wait_for_stability(¤t,0,0, "taking screenshot...");
- page0_rgbimage= alloc_rgb_image(current->w, current->h);
- page_images[0]= convert_page(current, page0_rgbimage);
+ page_images[0]= convert_page(current);
npages= 1;
progress_log("collected single screenshot.");
}
npages= 1;
progress_log("collected single screenshot.");
}