"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "f.mashup.cc" between
fotoxx-22.30.tar.gz and fotoxx-22.35.tar.gz

About: fotoxx is a program for photo editing and collection management.

f.mashup.cc  (fotoxx-22.30):f.mashup.cc  (fotoxx-22.35)
skipping to change at line 492 skipping to change at line 492
if (ii == 3 && PRscale == 1.0) project_rescale(4.0); // 1x -> 4x if (ii == 3 && PRscale == 1.0) project_rescale(4.0); // 1x -> 4x
if (ii == 4 && PRscale > 1.0) project_rescale(1.0); // [reset] back to 1x if (ii == 4 && PRscale > 1.0) project_rescale(1.0); // [reset] back to 1x
return 1; return 1;
} }
if (strmatch(event,"done")) // project done if (strmatch(event,"done")) // project done
{ {
zdialog_free(zd); // kill dialog zdialog_free(zd); // kill dialog
freeMouse(); freeMouse();
if (navi::gallerytype == GDIR) { if (navi::gallerytype == FOLDER) {
file2 = zstrdup(navi::galleryname,"mashup",108); file2 = zstrdup(navi::galleryname,"mashup",108);
cc = strlen(file2); cc = strlen(file2);
strncatv(file2,cc+108,"/",projectname,".png",null); // gallery/projectname.png strncatv(file2,cc+108,"/",projectname,".png",null); // gallery/projectname.png
} }
else { else {
file2 = zstrdup(projectname,"mashup",6); // projectname.png file2 = zstrdup(projectname,"mashup",6); // projectname.png
strcat(file2,".png"); strcat(file2,".png");
} }
file = zgetfile("save Mashup output file",MWIN,"save",file2); file = zgetfile("save Mashup output file",MWIN,"save",file2);
skipping to change at line 613 skipping to change at line 613
pp = strrchr(projectfile,'/'); // project name from file name pp = strrchr(projectfile,'/'); // project name from file name
strncpy0(projectname,pp+1,100); strncpy0(projectname,pp+1,100);
// read project file and validate all data // read project file and validate all data
fid = fopen(projectfile,"r"); // open project file fid = fopen(projectfile,"r"); // open project file
if (! fid) goto failure; if (! fid) goto failure;
pp = fgets_trim(buff,XFCC,fid); // read layout record pp = fgets_trim(buff,XFCC,fid); // read layout record
if (! pp) { Plog(1,"no layout \n"); goto badproject; } if (! pp) { Plog(0,"no layout \n"); goto badproject; }
if (strmatchN(pp,"layout:",7)) // layout: /.../filename.jpg if (strmatchN(pp,"layout:",7)) // layout: /.../filename.jpg
{ {
pp += 7; pp += 7;
while (*pp == ' ') pp++; while (*pp == ' ') pp++;
strncpy0(layoutfile,pp,XFCC); strncpy0(layoutfile,pp,XFCC);
if (! regfile(layoutfile)) { if (! regfile(layoutfile)) {
zmessageACK(Mwin,"layout image file missing: \n %s",layoutfile); zmessageACK(Mwin,"layout image file missing: \n %s",layoutfile);
Plog(1,"no layout image \n"); Plog(0,"no layout image \n");
goto badproject; goto badproject;
} }
Lpxb = PXB_load(layoutfile,1); // layout image Lpxb = PXB_load(layoutfile,1); // layout image
if (! Lpxb) { Plog(1,"PXB_load() layout file \n"); goto badproject; } if (! Lpxb) { Plog(0,"PXB_load() layout file \n"); goto badproject; }
Lww = Lpxb->ww; // layout size Lww = Lpxb->ww; // layout size
Lhh = Lpxb->hh; Lhh = Lpxb->hh;
} }
else if (strmatchN(pp,"flatlayout:",11)) // flatlayout: ww hh R|G|B else if (strmatchN(pp,"flatlayout:",11)) // flatlayout: ww hh R|G|B
{ {
nn = sscanf(buff,"flatlayout: %d %d RGB: %d/%d/%d \n", nn = sscanf(buff,"flatlayout: %d %d RGB: %d/%d/%d \n",
&ww1,&hh1,&flatRGB[0],&flatRGB[1],&flatRGB[2]); &ww1,&hh1,&flatRGB[0],&flatRGB[1],&flatRGB[2]);
if (nn != 5) { Plog(1,"flatlayout rec. \n"); goto badproject; } if (nn != 5) { Plog(0,"flatlayout rec. \n"); goto badproject; }
*layoutfile = 0; // flat layout, no layout file *layoutfile = 0; // flat layout, no layout file
Lpxb = PXB_make(ww1,hh1,3); // layout image Lpxb = PXB_make(ww1,hh1,3); // layout image
if (! Lpxb) goto badproject; if (! Lpxb) goto badproject;
Lww = Lpxb->ww; // layout size Lww = Lpxb->ww; // layout size
Lhh = Lpxb->hh; Lhh = Lpxb->hh;
for (py = 0; py < Lhh; py++) // fill layout with flat color for (py = 0; py < Lhh; py++) // fill layout with flat color
for (px = 0; px < Lww; px++) { for (px = 0; px < Lww; px++) {
pix = PXBpix(Lpxb,px,py); pix = PXBpix(Lpxb,px,py);
pix[0] = flatRGB[0]; pix[0] = flatRGB[0];
pix[1] = flatRGB[1]; pix[1] = flatRGB[1];
pix[2] = flatRGB[2]; pix[2] = flatRGB[2];
} }
} }
else { Plog(1,"unknown rec. \n"); goto badproject; } else { Plog(0,"unknown rec. \n"); goto badproject; }
// read any number of overlay image records // read any number of overlay image records
while (true) while (true)
{ {
pp = fgets_trim(buff,XFCC,fid); pp = fgets_trim(buff,XFCC,fid);
if (! pp) break; if (! pp) break;
if (strmatchN(pp,"end",3)) break; if (strmatchN(pp,"end",3)) break;
if (strmatchN(pp,"image:",6)) // image: /.../filename.jpg if (strmatchN(pp,"image:",6)) // image: /.../filename.jpg
skipping to change at line 697 skipping to change at line 697
image[ii].ww1 = pxbtemp->ww; image[ii].ww1 = pxbtemp->ww;
image[ii].hh1 = pxbtemp->hh; image[ii].hh1 = pxbtemp->hh;
continue; continue;
} }
ii = Nimage - 1; // current image ii = Nimage - 1; // current image
if (strmatchN(pp,"position:",9)) { // position: xxx yyy if (strmatchN(pp,"position:",9)) { // position: xxx yyy
nn = sscanf(pp,"position: %d %d",&image[ii].px0,&image[ii].py0); nn = sscanf(pp,"position: %d %d",&image[ii].px0,&image[ii].py0);
if (nn != 2) { Plog(1,"position rec. \n"); goto badproject; } if (nn != 2) { Plog(0,"position rec. \n"); goto badproject; }
continue; continue;
} }
if (strmatchN(pp,"fixed:",6)) { // position fixed: n 22.30 if (strmatchN(pp,"fixed:",6)) { // position fixed: n 22.30
nn = sscanf(pp,"fixed: %d",&image[ii].fixed); nn = sscanf(pp,"fixed: %d",&image[ii].fixed);
if (nn != 1) { Plog(1,"fixed rec. \n"); goto badproject; } if (nn != 1) { Plog(0,"fixed rec. \n"); goto badproject; }
continue; continue;
} }
if (strmatchN(pp,"scale:",6)) { // scale: n.nnn if (strmatchN(pp,"scale:",6)) { // scale: n.nnn
nn = sscanf(pp,"scale: %f",&image[ii].scale); nn = sscanf(pp,"scale: %f",&image[ii].scale);
if (nn != 1) { Plog(1,"scale rec. \n"); goto badproject; } if (nn != 1) { Plog(0,"scale rec. \n"); goto badproject; }
continue; continue;
} }
if (strmatchN(pp,"theta:",6)) { // theta: n.nnn if (strmatchN(pp,"theta:",6)) { // theta: n.nnn
nn = sscanf(pp,"theta: %f",&image[ii].theta); nn = sscanf(pp,"theta: %f",&image[ii].theta);
if (nn != 1) { Plog(1,"theta rec. \n"); goto badproject; } if (nn != 1) { Plog(0,"theta rec. \n"); goto badproject; }
image[ii].sinT = sin(image[ii].theta); image[ii].sinT = sin(image[ii].theta);
image[ii].cosT = cos(image[ii].theta); image[ii].cosT = cos(image[ii].theta);
continue; continue;
} }
if (strmatchN(pp,"Btransp:",8)) { // Btransp: 0.nnn if (strmatchN(pp,"Btransp:",8)) { // Btransp: 0.nnn
nn = sscanf(pp,"Btransp: %f",&image[ii].Btransp); nn = sscanf(pp,"Btransp: %f",&image[ii].Btransp);
if (nn != 1) { Plog(1,"Btransp rec. \n"); goto badproject; } if (nn != 1) { Plog(0,"Btransp rec. \n"); goto badproject; }
continue; continue;
} }
if (strmatchN(pp,"Lmarg:",6)) { // Lmarg: nnn if (strmatchN(pp,"Lmarg:",6)) { // Lmarg: nnn
nn = sscanf(pp,"Lmarg: %d",&image[ii].Lmarg); nn = sscanf(pp,"Lmarg: %d",&image[ii].Lmarg);
if (nn != 1) { Plog(1,"Lmarg rec. \n"); goto badproject; } if (nn != 1) { Plog(0,"Lmarg rec. \n"); goto badproject; }
continue; continue;
} }
if (strmatchN(pp,"Rmarg:",6)) { // Rmarg: nnn if (strmatchN(pp,"Rmarg:",6)) { // Rmarg: nnn
nn = sscanf(pp,"Rmarg: %d",&image[ii].Rmarg); nn = sscanf(pp,"Rmarg: %d",&image[ii].Rmarg);
if (nn != 1) { Plog(1,"Rmarg rec. \n"); goto badproject; } if (nn != 1) { Plog(0,"Rmarg rec. \n"); goto badproject; }
continue; continue;
} }
if (strmatchN(pp,"Tmarg:",6)) { // Tmarg: nnn if (strmatchN(pp,"Tmarg:",6)) { // Tmarg: nnn
nn = sscanf(pp,"Tmarg: %d",&image[ii].Tmarg); nn = sscanf(pp,"Tmarg: %d",&image[ii].Tmarg);
if (nn != 1) { Plog(1,"Tmarg rec. \n"); goto badproject; } if (nn != 1) { Plog(0,"Tmarg rec. \n"); goto badproject; }
continue; continue;
} }
if (strmatchN(pp,"Bmarg:",6)) { // Bmarg: nnn if (strmatchN(pp,"Bmarg:",6)) { // Bmarg: nnn
nn = sscanf(pp,"Bmarg: %d",&image[ii].Bmarg); nn = sscanf(pp,"Bmarg: %d",&image[ii].Bmarg);
if (nn != 1) { Plog(1,"Bmarg rec. \n"); goto badproject; } if (nn != 1) { Plog(0,"Bmarg rec. \n"); goto badproject; }
continue; continue;
} }
if (strmatchN(pp,"Lblend:",7)) { // Lblend: nnn if (strmatchN(pp,"Lblend:",7)) { // Lblend: nnn
nn = sscanf(pp,"Lblend: %d",&image[ii].Lblend); nn = sscanf(pp,"Lblend: %d",&image[ii].Lblend);
if (nn != 1) { Plog(1,"Lblend rec. \n"); goto badproject; } if (nn != 1) { Plog(0,"Lblend rec. \n"); goto badproject; }
continue; continue;
} }
if (strmatchN(pp,"Rblend:",7)) { // Rblend: nnn if (strmatchN(pp,"Rblend:",7)) { // Rblend: nnn
nn = sscanf(pp,"Rblend: %d",&image[ii].Rblend); nn = sscanf(pp,"Rblend: %d",&image[ii].Rblend);
if (nn != 1) { Plog(1,"Rblend rec. \n"); goto badproject; } if (nn != 1) { Plog(0,"Rblend rec. \n"); goto badproject; }
continue; continue;
} }
if (strmatchN(pp,"Tblend:",7)) { // Tblend: nnn if (strmatchN(pp,"Tblend:",7)) { // Tblend: nnn
nn = sscanf(pp,"Tblend: %d",&image[ii].Tblend); nn = sscanf(pp,"Tblend: %d",&image[ii].Tblend);
if (nn != 1) { Plog(1,"Tblend rec. \n"); goto badproject; } if (nn != 1) { Plog(0,"Tblend rec. \n"); goto badproject; }
continue; continue;
} }
if (strmatchN(pp,"Bblend:",7)) { // Bblend: nnn if (strmatchN(pp,"Bblend:",7)) { // Bblend: nnn
nn = sscanf(pp,"Bblend: %d",&image[ii].Bblend); nn = sscanf(pp,"Bblend: %d",&image[ii].Bblend);
if (nn != 1) { Plog(1,"Bblend rec. \n"); goto badproject; } if (nn != 1) { Plog(0,"Bblend rec. \n"); goto badproject; }
continue; continue;
} }
if (strmatchN(pp,"Nwarp:",6)) { // Nwarp: nn if (strmatchN(pp,"Nwarp:",6)) { // Nwarp: nn
nn = sscanf(pp,"Nwarp: %d",&image[ii].Nwarp); nn = sscanf(pp,"Nwarp: %d",&image[ii].Nwarp);
if (nn != 1) { Plog(1,"Nwarp rec. \n"); goto badproject; } if (nn != 1) { Plog(0,"Nwarp rec. \n"); goto badproject; }
if (image[ii].Nwarp > 200) { Plog(1,"Nwarp rec. \n"); goto badproject; if (image[ii].Nwarp > 200) { Plog(0,"Nwarp rec. \n"); goto badproject;
} }
for (kk = 0; kk < image[ii].Nwarp; kk++) { for (kk = 0; kk < image[ii].Nwarp; kk++) {
pp = fgets_trim(buff,XFCC,fid); // n.nnn n.nnn n.nnn n.nnn n.nnn pp = fgets_trim(buff,XFCC,fid); // n.nnn n.nnn n.nnn n.nnn n.nnn
if (! pp) break; // (loop for Nwarp records) if (! pp) break; // (loop for Nwarp records)
nn = sscanf(pp,"%f %f %f %f %f",&image[ii].warpmem[kk][0], nn = sscanf(pp,"%f %f %f %f %f",&image[ii].warpmem[kk][0],
&image[ii].warpmem[kk][1],&image[ii].warpmem[kk][2], &image[ii].warpmem[kk][1],&image[ii].warpmem[kk][2],
&image[ii].warpmem[kk][3],&image[ii].warpmem[kk][4]); &image[ii].warpmem[kk][3],&image[ii].warpmem[kk][4]);
if (nn != 5) { Plog(1,"warpmem rec. \n"); goto badproject; } if (nn != 5) { Plog(0,"warpmem rec. \n"); goto badproject; }
} }
} }
ww1 = image[ii].ww1; ww1 = image[ii].ww1;
hh1 = image[ii].hh1; hh1 = image[ii].hh1;
if (strmatchN(pp,"vtrancc:",8)) { // vtrancc: nnnn if (strmatchN(pp,"vtrancc:",8)) { // vtrancc: nnnn
nn = sscanf(pp,"vtrancc: %d",&vcc); nn = sscanf(pp,"vtrancc: %d",&vcc);
if (nn != 1) { Plog(1,"vtrancc rec. \n"); goto badproject; } if (nn != 1) { Plog(0,"vtrancc rec. \n"); goto badproject; }
if (vcc && vcc != ww1 * hh1) { Plog(1,"vtrancc rec. \n"); goto badproje if (vcc && vcc != ww1 * hh1) { Plog(0,"vtrancc rec. \n"); goto badproje
ct; } ct; }
image[ii].vtrancc = vcc; image[ii].vtrancc = vcc;
continue; continue;
} }
if (strmatchN(pp,"warpcc:",7)) { // warpcc: nnnn if (strmatchN(pp,"warpcc:",7)) { // warpcc: nnnn
nn = sscanf(pp,"warpcc: %d",&wcc); nn = sscanf(pp,"warpcc: %d",&wcc);
if (nn != 1) { Plog(1,"warpcc rec. \n"); goto badproject; } if (nn != 1) { Plog(0,"warpcc rec. \n"); goto badproject; }
if (wcc && wcc != (int) (ww1 * hh1 * sizeof(float))) { Plog(1,"warpcc r if (wcc && wcc != (int) (ww1 * hh1 * sizeof(float))) { Plog(0,"warpcc r
ec. \n"); goto badproject; } ec. \n"); goto badproject; }
image[ii].warpcc = wcc; image[ii].warpcc = wcc;
continue; continue;
} }
} }
// read any number of text records // read any number of text records
while (true) while (true)
{ {
pp = fgets_trim(buff,XFCC,fid); pp = fgets_trim(buff,XFCC,fid);
skipping to change at line 831 skipping to change at line 831
pp += 5; pp += 5;
while (*pp == ' ') pp++; while (*pp == ' ') pp++;
repl_Nstrs(pp,txattr->text,"\\n","\n",null); // replace "\n" with newline repl_Nstrs(pp,txattr->text,"\\n","\n",null); // replace "\n" with newline
continue; continue;
} }
ii = Ntext - 1; // current text ii = Ntext - 1; // current text
if (strmatchN(pp,"position:",9)) { // position: xx yy if (strmatchN(pp,"position:",9)) { // position: xx yy
nn = sscanf(pp,"position: %d %d",&text[ii].px0,&text[ii].py0); nn = sscanf(pp,"position: %d %d",&text[ii].px0,&text[ii].py0);
if (nn != 2) { Plog(1,"position rec. \n"); goto badproject; } if (nn != 2) { Plog(0,"position rec. \n"); goto badproject; }
continue; continue;
} }
if (strmatchN(pp,"font:",5)) { // font: free sans size: nn if (strmatchN(pp,"font:",5)) { // font: free sans size: nn
pp += 5; pp += 5;
while (*pp == ' ') pp++; while (*pp == ' ') pp++;
pp2 = strstr(pp,"size:"); pp2 = strstr(pp,"size:");
if (! pp2) { Plog(1,"font rec. \n"); goto badproject; } if (! pp2) { Plog(0,"font rec. \n"); goto badproject; }
*pp2 = 0; *pp2 = 0;
pp2 += 5; pp2 += 5;
strncpy0(txattr->font,pp,80); strncpy0(txattr->font,pp,80);
txattr->size = atoi(pp2); txattr->size = atoi(pp2);
if (txattr->size < 8) { Plog(1,"font rec. \n"); goto badproject; } if (txattr->size < 8) { Plog(0,"font rec. \n"); goto badproject; }
continue; continue;
} }
if (strmatchN(pp,"attributes:",11)) { // attributes if (strmatchN(pp,"attributes:",11)) { // attributes
txattr = &text[ii].attr; txattr = &text[ii].attr;
nn = sscanf(pp,"attributes: %f %s %s %s %s %d %d %d %d %d %d %d", nn = sscanf(pp,"attributes: %f %s %s %s %s %d %d %d %d %d %d %d",
&txattr->angle, txattr->color[0], txattr->color[1], txattr->co lor[2], txattr->color[3], &txattr->angle, txattr->color[0], txattr->color[1], txattr->co lor[2], txattr->color[3],
&txattr->transp[0], &txattr->transp[1], &txattr->transp[2], &t xattr->transp[3], &txattr->transp[0], &txattr->transp[1], &txattr->transp[2], &t xattr->transp[3],
&txattr->towidth, &txattr->shwidth, &txattr->shangle); &txattr->towidth, &txattr->shwidth, &txattr->shangle);
if (nn != 12) { Plog(1,"attributes rec. \n"); goto badproject; } if (nn != 12) { Plog(0,"attributes rec. \n"); goto badproject; }
} }
} }
// read any number of line/arrow records // read any number of line/arrow records
while (true) while (true)
{ {
pp = fgets_trim(buff,XFCC,fid); pp = fgets_trim(buff,XFCC,fid);
if (! pp) break; if (! pp) break;
if (strmatchN(pp,"end",3)) break; if (strmatchN(pp,"end",3)) break;
if (strmatchN(pp,"line:",5)) { // line: if (strmatchN(pp,"line:",5)) { // line:
ii = Nline++; ii = Nline++;
continue; continue;
} }
ii = Nline - 1; // current line ii = Nline - 1; // current line
if (strmatchN(pp,"position:",9)) { // position: xx yy if (strmatchN(pp,"position:",9)) { // position: xx yy
nn = sscanf(pp,"position: %d %d",&line[ii].px0,&line[ii].py0); nn = sscanf(pp,"position: %d %d",&line[ii].px0,&line[ii].py0);
if (nn != 2) { Plog(1,"position rec. \n"); goto badproject; } if (nn != 2) { Plog(0,"position rec. \n"); goto badproject; }
continue; continue;
} }
if (strmatchN(pp,"attributes:",11)) { // attributes: if (strmatchN(pp,"attributes:",11)) { // attributes:
lnattr = &line[ii].attr; lnattr = &line[ii].attr;
nn = sscanf(pp,"attributes: %d %d %d %d %f %s %s %s %s %d %d %d %d % d %d %d", nn = sscanf(pp,"attributes: %d %d %d %d %f %s %s %s %s %d %d %d %d % d %d %d",
&lnattr->length, &lnattr->width, &lnattr->larrow, &lnattr->rar row, &lnattr->angle, &lnattr->length, &lnattr->width, &lnattr->larrow, &lnattr->rar row, &lnattr->angle,
lnattr->color[0], lnattr->color[1], lnattr->color[2], lnattr-> color[3], lnattr->color[0], lnattr->color[1], lnattr->color[2], lnattr-> color[3],
&lnattr->transp[0], &lnattr->transp[1], &lnattr->transp[2], &l nattr->transp[3], &lnattr->transp[0], &lnattr->transp[1], &lnattr->transp[2], &l nattr->transp[3],
&lnattr->towidth, &lnattr->shwidth, &lnattr->shangle); &lnattr->towidth, &lnattr->shwidth, &lnattr->shangle);
if (nn != 16) { Plog(1,"attributes rec. \n"); goto badproject; } if (nn != 16) { Plog(0,"attributes rec. \n"); goto badproject; }
} }
} }
fclose(fid); fclose(fid);
fid = 0; fid = 0;
// read binary transparency file if any // read binary transparency file if any
for (vcc = ii = 0; ii < Nimage; ii++) // sum transparency data for (vcc = ii = 0; ii < Nimage; ii++) // sum transparency data
vcc += image[ii].vtrancc; vcc += image[ii].vtrancc;
skipping to change at line 909 skipping to change at line 909
{ {
nfid = open(tranfile,O_RDONLY); nfid = open(tranfile,O_RDONLY);
if (nfid < 0) goto failure; if (nfid < 0) goto failure;
for (ii = 0; ii < Nimage; ii++) // read transparency data for (ii = 0; ii < Nimage; ii++) // read transparency data
{ {
vcc = image[ii].vtrancc; vcc = image[ii].vtrancc;
if (vcc) { if (vcc) {
image[ii].vtranmap = (uint8 *) zmalloc(vcc,"mashup"); image[ii].vtranmap = (uint8 *) zmalloc(vcc,"mashup");
cc = read(nfid,image[ii].vtranmap,vcc); cc = read(nfid,image[ii].vtranmap,vcc);
if (cc != vcc) { Plog(1,"vtranmap data \n"); goto badproject; } if (cc != vcc) { Plog(0,"vtranmap data \n"); goto badproject; }
} }
else image[ii].vtranmap = 0; else image[ii].vtranmap = 0;
} }
close(nfid); close(nfid);
nfid = -1; nfid = -1;
} }
// read binary warp data file if any // read binary warp data file if any
skipping to change at line 934 skipping to change at line 934
{ {
nfid = open(warpfile,O_RDONLY); nfid = open(warpfile,O_RDONLY);
if (nfid < 0) goto failure; if (nfid < 0) goto failure;
for (ii = 0; ii < Nimage; ii++) // read warp data for (ii = 0; ii < Nimage; ii++) // read warp data
{ {
wcc = image[ii].warpcc; wcc = image[ii].warpcc;
if (wcc) { if (wcc) {
image[ii].warpx = (float *) zmalloc(wcc,"mashup"); image[ii].warpx = (float *) zmalloc(wcc,"mashup");
cc = read(nfid,image[ii].warpx,wcc); cc = read(nfid,image[ii].warpx,wcc);
if (cc != wcc) { Plog(1,"warpx data \n"); goto badproject; } if (cc != wcc) { Plog(0,"warpx data \n"); goto badproject; }
image[ii].warpy = (float *) zmalloc(wcc,"mashup"); image[ii].warpy = (float *) zmalloc(wcc,"mashup");
cc = read(nfid,image[ii].warpy,wcc); cc = read(nfid,image[ii].warpy,wcc);
if (cc != wcc) { Plog(1,"warpy data \n"); goto badproject; } if (cc != wcc) { Plog(0,"warpy data \n"); goto badproject; }
} }
else image[ii].warpx = image[ii].warpy = 0; else image[ii].warpx = image[ii].warpy = 0;
} }
close(nfid); close(nfid);
nfid = -1; nfid = -1;
} }
// generate overlay images // generate overlay images
 End of changes. 32 change blocks. 
38 lines changed or deleted 38 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)