mikew@wyse.wyse.com (Mike Wexler) (11/12/88)
Submitted-by: dana@thumper.bellcore.com (Dana A. Chee) Posting-number: Volume 2, Issue 10 Archive-name: xfig/patch5 [BTW, the address for submissions to comp.sources.x is x-sources@wyse.com] Here is the first set of patches for xfig as it came on the R3 source tape. ==================== xfig.r3.patch1 ==================== *** /tmp/d10855 Wed Nov 9 14:40:48 1988 --- patchlevel.h Wed Nov 9 14:40:15 1988 *************** *** 1,2 ! #define PATCHLEVEL 3 ! #define PATCHLEVEL 2 --- 1 ----- ! #define PATCHLEVEL 4 *** /tmp/d10858 Wed Nov 9 14:40:48 1988 --- canvas.c Wed Nov 9 14:06:34 1988 *************** *** 171,177 String *params; Cardinal *nparams; { ! Position x, y; Window w; extern TOOL menu; --- 171,177 ----- String *params; Cardinal *nparams; { ! int x, y; Window w; extern TOOL menu; *** /tmp/d10861 Wed Nov 9 14:40:50 1988 --- main.c Wed Nov 9 13:25:56 1988 *************** *** 254,260 { XrmValue value; XrmDatabase newdb = (XrmDatabase) 0; ! extern XrmDatabase XtDefaultDB; value.size = sizeof("White"); value.addr = "White"; --- 254,260 ----- { XrmValue value; XrmDatabase newdb = (XrmDatabase) 0; ! XrmDatabase XtDefaultDB; XtDefaultDB = XtDatabase(tool_d); value.size = sizeof("White"); *************** *** 256,261 XrmDatabase newdb = (XrmDatabase) 0; extern XrmDatabase XtDefaultDB; value.size = sizeof("White"); value.addr = "White"; XrmPutResource(&newdb, "xfig*borderColor", "String", --- 256,262 ----- XrmDatabase newdb = (XrmDatabase) 0; XrmDatabase XtDefaultDB; + XtDefaultDB = XtDatabase(tool_d); value.size = sizeof("White"); value.addr = "White"; XrmPutResource(&newdb, "xfig*borderColor", "String", *** /tmp/d10864 Wed Nov 9 14:40:51 1988 --- save.c Wed Nov 9 13:15:18 1988 *************** *** 170,175 FILE *fp; F_ellipse *e; { fprintf(fp, "%d %d %d %d %d %d %d %d %.3f %d %.3f %d %d %d %d %d %d %d %d\n", O_ELLIPSE, e->type, e->style, e->thickness, e->color, e->depth, e->pen, e->area_fill, --- 170,178 ----- FILE *fp; F_ellipse *e; { + if( e->radiuses.x == 0 || e->radiuses.y == 0 ) + return; + fprintf(fp, "%d %d %d %d %d %d %d %d %.3f %d %.3f %d %d %d %d %d %d %d %d\n", O_ELLIPSE, e->type, e->style, e->thickness, e->color, e->depth, e->pen, e->area_fill, *************** *** 187,192 F_point *p; F_arrow *f, *b; fprintf(fp, "%d %d %d %d %d %d %d %d %.3f %d %d\n", O_POLYLINE, l->type, l->style, l->thickness, l->color, l->depth, l->pen, l->area_fill, l->style_val, --- 190,197 ----- F_point *p; F_arrow *f, *b; + if( l->points == NULL ) + return; fprintf(fp, "%d %d %d %d %d %d %d %d %.3f %d %d\n", O_POLYLINE, l->type, l->style, l->thickness, l->color, l->depth, l->pen, l->area_fill, l->style_val, *************** *** 212,217 F_point *p; F_arrow *f, *b; fprintf(fp, "%d %d %d %d %d %d %d %d %.3f %d %d\n", O_SPLINE, s->type, s->style, s->thickness, s->color, s->depth, s->pen, s->area_fill, s->style_val, --- 217,224 ----- F_point *p; F_arrow *f, *b; + if( s->points == NULL ) + return; fprintf(fp, "%d %d %d %d %d %d %d %d %.3f %d %d\n", O_SPLINE, s->type, s->style, s->thickness, s->color, s->depth, s->pen, s->area_fill, s->style_val, *************** *** 241,246 FILE *fp; F_text *t; { fprintf(fp, "%d %d %d %d %d %d %d %.3f %d %d %d %d %d %s\1\n", O_TEXT, t->type, t->font, t->size, t->pen, t->color, t->depth, t->angle, --- 248,255 ----- FILE *fp; F_text *t; { + if( t->length == 0 ) + return; fprintf(fp, "%d %d %d %d %d %d %d %.3f %d %d %d %d %d %s\1\n", O_TEXT, t->type, t->font, t->size, t->pen, t->color, t->depth, t->angle, *** /tmp/d10867 Wed Nov 9 14:40:52 1988 --- search.c Wed Nov 9 14:07:41 1988 *************** *** 51,56 a = e->radiuses.x; b = e->radiuses.y; dis = sqrt((double)(dx*dx + dy*dy)); r = a * b * dis / sqrt((double) (b*b*dx*dx + a*a*dy*dy)); if (fabs(dis - r) <= tol) { *px = (int)(r*dx/dis + ((dx < 0) ? -.5 : .5)) + e->center.x; --- 51,61 ----- a = e->radiuses.x; b = e->radiuses.y; dis = sqrt((double)(dx*dx + dy*dy)); + if (dis == 0) { + *px = e->center.x; + *py = e->center.y; + return(e); + } r = a * b * dis / sqrt((double) (b*b*dx*dx + a*a*dy*dy)); if (fabs(dis - r) <= tol) { *px = (int)(r*dx/dis + ((dx < 0) ? -.5 : .5)) + e->center.x; *** /tmp/d10870 Wed Nov 9 14:40:52 1988 --- xtra.c Wed Nov 9 13:58:23 1988 *************** *** 128,134 if( confirm == NULL ) { ! Position rootx, rooty; Window win; Arg confirm_args[5]; --- 128,134 ----- if( confirm == NULL ) { ! int rootx, rooty; Window win; Arg confirm_args[5]; -- Mike Wexler(wyse!mikew) Phone: (408)433-1000 x1330 Moderator of comp.sources.x