X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~yarrgweb/git?p=ypp-sc-tools.main.git;a=blobdiff_plain;f=pctb%2Fpages.c;h=32e429ab39df1be1220b2bedbe083a1be7ccf17d;hp=58cb306b436f9c3d76937396e763e81fd50aa07f;hb=e1678818393f23b138a4ef8c7c247de8cb97d741;hpb=0584d4dc42b7f9e75878b5281dde05f35e2f4365 diff --git a/pctb/pages.c b/pctb/pages.c index 58cb306..32e429a 100644 --- a/pctb/pages.c +++ b/pctb/pages.c @@ -45,7 +45,7 @@ CanonImage *page_images[MAX_PAGES]; int npages; RgbImage *page0_rgbimage; -char *ocean, *pirate; +const char *ocean, *pirate; static XWindowAttributes attr; static Window id; @@ -271,8 +271,8 @@ static void snapshot(Snapshot **output) { int x,y,i; unsigned char *op= (*output)->data; - for (y=0; y0 ); \ - }while(0) - ASSIGN(pirate, title + S(prefix), spc1); +#define ASSIGN(what, start, end) \ + what= masprintf("%.*s", (end)-(start), start); \ + if (o_##what) REQUIRE( !strcmp(o_##what, what) ); \ + else + ASSIGN(ocean, spc1 + S(onthe), (title + len) - S(suffix)); + ASSIGN(pirate, title + S(prefix), spc1); debugfind(" YES!\n"); id= w2; @@ -712,9 +714,10 @@ void find_yppclient_window(void) { if (children1) XFree(children1); } if (nfound>1) - fatal("Found several YPP clients." + fatal("Found several possible YPP clients." " Close one, or specify the windowid with --window-id.\n"); if (nfound<1) - fatal("Did not find YPP client." - " Use --window-id and/or report this as a fault.\n"); + fatal("Did not find %sYPP client." + " Use --window-id and/or report this as a fault.\n", + o_ocean || o_pirate ? "matching ": ""); }