diff -c -r xmulti200beta/config.tmpl xmulti-current/config.tmpl *** xmulti200beta/config.tmpl Sat Dec 27 22:30:14 1997 --- xmulti-current/config.tmpl Thu Jan 8 19:51:44 1998 *************** *** 13,21 **** XCOMM ----------- Compiler XCOMM CC = gcc ! XCOMM CDEBUGFLAGS = -g -Wall -ansi XCOMM CCOPTIONS = INLINE = XCOMM ----------- Making shared object options --- 13,23 ---- XCOMM ----------- Compiler XCOMM CC = gcc ! XCOMM CDEBUGFLAGS = -g -Wall XCOMM CCOPTIONS = INLINE = + YACC = bison -y + LEX = flex XCOMM ----------- Making shared object options *************** *** 42,49 **** XCOMM #define DONTHAVECDEFS XCOMM for SunOS 4.1.x - XCOMM YACC = bison -y - XCOMM LEX = flex XCOMM DEFINES += -DSunOS4 XCOMM ------------------------------------------------------ --- 44,49 ---- diff -c -r xmulti200beta/fonts/fonts.c xmulti-current/fonts/fonts.c *** xmulti200beta/fonts/fonts.c Mon Dec 22 13:20:07 1997 --- xmulti-current/fonts/fonts.c Thu Jan 8 14:12:59 1998 *************** *** 300,306 **** int a, min = 99999; /* scalable */ ! if (scale_ok && face->scale_ok || face->scalable) r = fontface_addpoint(face, point); else { /* 一番近いサイズのものを探す */ --- 300,306 ---- int a, min = 99999; /* scalable */ ! if ((scale_ok && face->scale_ok) || face->scalable) r = fontface_addpoint(face, point); else { /* 一番近いサイズのものを探す */ diff -c -r xmulti200beta/fonts/text.c xmulti-current/fonts/text.c *** xmulti200beta/fonts/text.c Sat Dec 27 21:04:35 1997 --- xmulti-current/fonts/text.c Thu Jan 8 14:12:59 1998 *************** *** 38,44 **** while (p != NULL) { q = p; p = p->next; ! fontname_delete(p); } } --- 38,44 ---- while (p != NULL) { q = p; p = p->next; ! fontname_delete(q); } } *************** *** 228,234 **** fprintf(stderr, "warn: can't find font:[%lx]\n", head); goto retry; } ! end: } else { wchar_t head2; --- 228,234 ---- fprintf(stderr, "warn: can't find font:[%lx]\n", head); goto retry; } ! end: ; } else { wchar_t head2; *************** *** 545,551 **** head = HEAD_ISO8859_1; goto retry; } ! end: } { --- 545,551 ---- head = HEAD_ISO8859_1; goto retry; } ! end: ; } { diff -c -r xmulti200beta/html/MsgPop.c xmulti-current/html/MsgPop.c *** xmulti200beta/html/MsgPop.c Sat Dec 27 21:26:43 1997 --- xmulti-current/html/MsgPop.c Thu Jan 8 14:13:13 1998 *************** *** 35,44 **** XtOffsetOf(MsgPopRec,msgpop.dy), XtRImmediate, (XtPointer)0}, }; - static XtActionsRec actions[] = - { - }; - static char translations[] = ""; MsgPopClassRec msgPopClassRec = { --- 35,40 ---- *************** *** 52,59 **** /* initialize */ Initialize, /* initialize_hook */ NULL, /* realize */ Realize, ! /* actions */ actions, ! /* num_actions */ XtNumber(actions), /* resources */ resources, /* resource_count */ XtNumber(resources), /* xrm_class */ NULLQUARK, --- 48,55 ---- /* initialize */ Initialize, /* initialize_hook */ NULL, /* realize */ Realize, ! /* actions */ NULL, ! /* num_actions */ 0, /* resources */ resources, /* resource_count */ XtNumber(resources), /* xrm_class */ NULLQUARK, diff -c -r xmulti200beta/html/MsgShell.c xmulti-current/html/MsgShell.c *** xmulti200beta/html/MsgShell.c Sat Dec 27 21:25:41 1997 --- xmulti-current/html/MsgShell.c Thu Jan 8 14:13:14 1998 *************** *** 569,575 **** MSGLIST = MSGLIST->next; msgpacket_delete(m); } else { ! m->p += len; m->len -= len; if (m->len <= 0) { MSGLIST = MSGLIST->next; --- 569,575 ---- MSGLIST = MSGLIST->next; msgpacket_delete(m); } else { ! m->p = (char*)(m->p) + len; m->len -= len; if (m->len <= 0) { MSGLIST = MSGLIST->next; diff -c -r xmulti200beta/html/dtd_y.y xmulti-current/html/dtd_y.y *** xmulti200beta/html/dtd_y.y Mon Dec 22 13:20:03 1997 --- xmulti-current/html/dtd_y.y Thu Jan 8 14:13:14 1998 *************** *** 1,5 **** --- 1,6 ---- %{ #include + #include #include #include "tag.h" diff -c -r xmulti200beta/html/frame.c xmulti-current/html/frame.c *** xmulti200beta/html/frame.c Sat Dec 27 20:29:16 1997 --- xmulti-current/html/frame.c Thu Jan 8 14:13:15 1998 *************** *** 33,39 **** q = p; XFreeColors(f->dpy, f->colormap, &p->pixel, 1, 0); p = p->next; ! free(p); } } --- 33,39 ---- q = p; XFreeColors(f->dpy, f->colormap, &p->pixel, 1, 0); p = p->next; ! free(q); } } *************** *** 243,251 **** p->tagwork = NULL; p->eof = 0; ! p->body = NULL; p->images = NULL; ! p->pixels = NULL; p->links = NULL; p->names = NULL; --- 243,251 ---- p->tagwork = NULL; p->eof = 0; ! p->body = NULL; p->images = NULL; ! p->pixels = NULL; p->links = NULL; p->names = NULL; *************** *** 256,270 **** --- 256,280 ---- frame_clean(Frame *f) { mytimerlist_delete(f->images); + f->images = NULL; + while (f->pinfo && f->pinfo->next) frame_pop_parseinfo(f); parseinfo_delete(f->pinfo); + f->pinfo = NULL; + stylesheetlist_delete(f->stylesheet); + f->stylesheet = NULL; /* clear objects */ htmlhrefinfolist_delete(f->links); + f->links = NULL; + colorlistlist_delete(f, f->pixels); + f->pixels = NULL; + image_delete(f->bg_image); + f->bg_image = NULL; } void *************** *** 280,289 **** if (f->name) free(f->name); tagwork_delete(f->tagwork); - free(f); for (i=0;i<7;i++) for (j=0;jfont[j][i]); } } --- 290,299 ---- if (f->name) free(f->name); tagwork_delete(f->tagwork); for (i=0;i<7;i++) for (j=0;jfont[j][i]); + free(f); } } *************** *** 432,438 **** f->link_style = inlinestyleinfo_new(f); inlinestyleinfo_setcolor(f,f->link_style,"red"); - f->pinfo = NULL; { Tag *tag = tag_new(TAG_normal); tag->ti = GetTagInfo("_start_"); --- 442,447 ---- diff -c -r xmulti200beta/html/frame_style.c xmulti-current/html/frame_style.c *** xmulti200beta/html/frame_style.c Sat Dec 27 13:12:48 1997 --- xmulti-current/html/frame_style.c Thu Jan 8 14:13:18 1998 *************** *** 61,67 **** while (p != NULL) { q = p; p = p->next; ! stylesheetset_delete(p); } } --- 61,67 ---- while (p != NULL) { q = p; p = p->next; ! stylesheetset_delete(q); } } diff -c -r xmulti200beta/html/obj.c xmulti-current/html/obj.c *** xmulti200beta/html/obj.c Tue Dec 23 20:46:19 1997 --- xmulti-current/html/obj.c Thu Jan 8 14:13:15 1998 *************** *** 22,28 **** p->width = 0; p->lbearing = p->rbearing = 0; p->ascent = p->descent = 0; ! p->pixel = 0; return p; } --- 22,28 ---- p->width = 0; p->lbearing = p->rbearing = 0; p->ascent = p->descent = 0; ! p->pixel = 0; return p; } *************** *** 96,102 **** perror("htmlimageobj_new"); exit(1); } - p->next = NULL; p->anim = NULL; return p; } --- 96,101 ---- diff -c -r xmulti200beta/html/obj.h xmulti-current/html/obj.h *** xmulti200beta/html/obj.h Tue Dec 23 13:00:29 1997 --- xmulti-current/html/obj.h Thu Jan 8 14:13:15 1998 *************** *** 18,23 **** --- 18,24 ---- typedef struct HTMLObj { struct HTMLObj *prev; struct HTMLObj *next; + HTMLObjType type; int x, y; *************** *** 36,49 **** } HTMLObj, *HTMLObjList; typedef struct HTMLTextObj { - struct HTMLTextObj *next; wchar_t *str; int len; OC *oc; } HTMLTextObj, *HTMLTextObjList; typedef struct HTMLImageObj { - struct HTMLOtherObj *next; Animate *anim; } HTMLImageObj, *HTMLImageObjList; --- 37,48 ---- diff -c -r xmulti200beta/html/style_l.l xmulti-current/html/style_l.l *** xmulti200beta/html/style_l.l Thu Dec 25 11:37:18 1997 --- xmulti-current/html/style_l.l Thu Jan 8 19:17:41 1998 *************** *** 4,9 **** --- 4,10 ---- from http://www.w3.org/TR/REC-CSS1#appendix-b */ #include + #include #include #include "stylesheet.h" *************** *** 39,44 **** --- 40,48 ---- @import {BEGIN(0); return IMPORT_SYM;} "!"{w}important {BEGIN(0); return IMPORTANT_SYM;} {ident} {BEGIN(AFTER_IDENT); + #ifdef DEBUG + fprintf(stderr,"ident:%s\n",yytext); + #endif yylval.id = StringToSSID(yytext); return IDENT;} {string} {BEGIN(0); diff -c -r xmulti200beta/html/style_term.c xmulti-current/html/style_term.c *** xmulti200beta/html/style_term.c Fri Dec 26 05:54:23 1997 --- xmulti-current/html/style_term.c Thu Jan 8 14:13:18 1998 *************** *** 103,107 **** --- 103,108 ---- case SSTERM_URL: case SSTERM_RGB: } + return 0; } diff -c -r xmulti200beta/html/style_y.y xmulti-current/html/style_y.y *** xmulti200beta/html/style_y.y Fri Dec 26 17:40:01 1997 --- xmulti-current/html/style_y.y Thu Jan 8 19:17:50 1998 *************** *** 301,306 **** --- 301,310 ---- stylein = fp; style_lineno = 1; base_sheet = *ss; + + #ifdef DEBUG + fprintf(stderr, "parse start!\n"); + #endif if ((ret = styleparse())) { fprintf(stderr, "errer while reading style sheet\n"); } diff -c -r xmulti200beta/html/stylesheet.c xmulti-current/html/stylesheet.c *** xmulti200beta/html/stylesheet.c Thu Dec 25 16:11:10 1997 --- xmulti-current/html/stylesheet.c Thu Jan 8 19:17:16 1998 *************** *** 84,89 **** --- 84,92 ---- p->term = term; p->priority = pr; p->ref = 1; + #ifdef DEBUG + declaration_show(p); + #endif return p; } *************** *** 140,146 **** while (p != NULL) { q = p; p = p->next; ! declarationset_delete(p); } } --- 143,149 ---- while (p != NULL) { q = p; p = p->next; ! declarationset_delete(q); } } *************** *** 185,191 **** while (p != NULL) { q = p; p = p->next; ! simpleselector_delete(p); } } --- 188,194 ---- while (p != NULL) { q = p; p = p->next; ! simpleselector_delete(q); } } *************** *** 229,234 **** --- 232,241 ---- s = s->next; } p->specificity = spec; + + #ifdef DEBUG + selector_show(p); + #endif return p; } *************** *** 279,285 **** while (p != NULL) { q = p; p = p->next; ! selectorset_delete(p); } } --- 286,292 ---- while (p != NULL) { q = p; p = p->next; ! selectorset_delete(q); } } *************** *** 333,339 **** while (p != NULL) { q = p; p = p->next; ! stylesheet_delete(p); } } --- 340,346 ---- while (p != NULL) { q = p; p = p->next; ! stylesheet_delete(q); } } diff -c -r xmulti200beta/html/tag.c xmulti-current/html/tag.c *** xmulti200beta/html/tag.c Sat Dec 27 13:39:54 1997 --- xmulti-current/html/tag.c Thu Jan 8 19:17:24 1998 *************** *** 13,20 **** #include "msgbuf.h" #include "animate.h" - #define DEBUG - /* TagOpt */ static TagOpt* tagopt_new(void) --- 13,18 ---- Only in xmulti-current: http diff -c -r xmulti200beta/imagelib/anim_l.l xmulti-current/imagelib/anim_l.l *** xmulti200beta/imagelib/anim_l.l Mon Dec 22 13:20:05 1997 --- xmulti-current/imagelib/anim_l.l Thu Jan 8 14:13:08 1998 *************** *** 1,4 **** --- 1,6 ---- %{ + #include + #include #include #include "anim_y.h" diff -c -r xmulti200beta/imagelib/anim_y.y xmulti-current/imagelib/anim_y.y *** xmulti200beta/imagelib/anim_y.y Mon Dec 22 13:20:05 1997 --- xmulti-current/imagelib/anim_y.y Thu Jan 8 14:13:09 1998 *************** *** 1,5 **** --- 1,6 ---- %{ #include + #include #include #include "namelist.h" #include "animate.h" *************** *** 15,20 **** --- 16,22 ---- static void set_mask(char *num); int animlex(); + int animerror(char*); %} %union { Only in xmulti200beta/imagelib/bitmaps: CVS diff -c -r xmulti200beta/imagelib/image.c xmulti-current/imagelib/image.c *** xmulti200beta/imagelib/image.c Mon Dec 22 13:20:06 1997 --- xmulti-current/imagelib/image.c Thu Jan 8 14:13:10 1998 *************** *** 353,359 **** int ncols) { int i, j, unique; ! XColor defs[MAX_COL], *ctab; int failed[MAX_COL],index[MAX_COL]; unsigned long pixel; --- 353,359 ---- int ncols) { int i, j, unique; ! XColor defs[MAX_COL], *ctab = NULL; int failed[MAX_COL],index[MAX_COL]; unsigned long pixel; *************** *** 429,436 **** */ /* only do SECOND PASS if there IS a colormap to read */ ! if ((ctab = (XColor *)alloca(sizeof ctab[0] * ncells)) == NULL) { ! perror("alloca"); fprintf(stderr,"panic:alloc_read_only_colors failed.\n"); abort(); } --- 429,436 ---- */ /* only do SECOND PASS if there IS a colormap to read */ ! if ((ctab = (XColor *)malloc(sizeof ctab[0] * ncells)) == NULL) { ! perror("malloc"); fprintf(stderr,"panic:alloc_read_only_colors failed.\n"); abort(); } *************** *** 478,485 **** } /* SECOND PASS */ ! if(img->npixel == ncols) return; /* THIRD PASS COLOR ALLOCATION: --- 478,487 ---- } /* SECOND PASS */ ! if(img->npixel == ncols) { ! free(ctab); return; + } /* THIRD PASS COLOR ALLOCATION: *************** *** 520,525 **** --- 522,529 ---- c_tbl[i].pixel = defs[i].pixel; } /* THIRD PASS */ + + free(ctab); } #ifndef ULONG_HIGH_BITS diff -c -r xmulti200beta/imagelib/mag.c xmulti-current/imagelib/mag.c *** xmulti200beta/imagelib/mag.c Mon Dec 22 13:20:05 1997 --- xmulti-current/imagelib/mag.c Thu Jan 8 14:13:11 1998 *************** *** 240,246 **** mag_read_stream(ImageData *img, FILE *fp) { int x,y,i,j; ! u_char *work, *flagA, *flagB; /* work area */ size_t a,b,size; if (query_header(img, fp) <0) --- 240,247 ---- mag_read_stream(ImageData *img, FILE *fp) { int x,y,i,j; ! u_char *work = NULL; ! u_char *flagA, *flagB; /* work area */ size_t a,b,size; if (query_header(img, fp) <0) *************** *** 253,259 **** + (a = flagB_offset - flagA_offset )+ 256 + (b = pixel_offset - flagB_offset )+ 256; ! if ((work = (u_char *)alloca(size)) == NULL) { fprintf(stderr,"alloca:%s\n" "Mag Image:read_stream image failed.\n",strerror(errno)); return -1; --- 254,260 ---- + (a = flagB_offset - flagA_offset )+ 256 + (b = pixel_offset - flagB_offset )+ 256; ! if ((work = (u_char *)malloc(size)) == NULL) { fprintf(stderr,"alloca:%s\n" "Mag Image:read_stream image failed.\n",strerror(errno)); return -1; *************** *** 265,270 **** --- 266,272 ---- if (fread(flagA,1,a,fp) < a || fread(flagB,1,b,fp) < b) { fprintf(stderr,"fread:%s\n" "Mag Image:read_stream image failed.\n",strerror(errno)); + free(work); return -1; } *************** *** 294,298 **** --- 296,302 ---- img->trans_flag = TRANS_INDEX; img->trans_index = ((u_char*)img->data)[0]; } + + free(work); return 0; } diff -c -r xmulti200beta/xmaid/XMaid.c xmulti-current/xmaid/XMaid.c *** xmulti200beta/xmaid/XMaid.c Sat Dec 27 13:57:25 1997 --- xmulti-current/xmaid/XMaid.c Thu Jan 8 14:13:00 1998 *************** *** 281,288 **** if (MOVEID) XtRemoveTimeOut(MOVEID); - xmaidmsginfo_delete(MSGINFO); xmaidmsginfolist_delete(MSGINFOLIST); if (ROOT) { if (ROOTBAK) { --- 281,288 ---- if (MOVEID) XtRemoveTimeOut(MOVEID); xmaidmsginfolist_delete(MSGINFOLIST); + xmaidmsginfo_delete(MSGINFO); if (ROOT) { if (ROOTBAK) { Only in xmulti-current/xmaid: data Only in xmulti200beta/xmaid: datas diff -c -r xmulti200beta/xmaid/defaultstyle xmulti-current/xmaid/defaultstyle *** xmulti200beta/xmaid/defaultstyle Sat Dec 27 21:50:40 1997 --- xmulti-current/xmaid/defaultstyle Thu Jan 8 19:59:16 1998 *************** *** 21,27 **** margin-top: 5px; margin-bottom: 5px; margin-left: 5px; ! margin-right: 5px; } H1 { --- 21,27 ---- margin-top: 5px; margin-bottom: 5px; margin-left: 5px; ! margin-right: 5px } H1 { *************** *** 32,47 **** margin-top: 8px; margin-bottom: 8px; margin-left: 5px; ! margin-right: 5px; } DT { border-top-width: 1px; border-left-width: 1px; border-right-width: 1px; ! border-bottom-width: 1px; } DD { ! margin-left: 10px; ! } \ No newline at end of file --- 32,48 ---- margin-top: 8px; margin-bottom: 8px; margin-left: 5px; ! margin-right: 5px } DT { border-top-width: 1px; border-left-width: 1px; border-right-width: 1px; ! border-bottom-width: 1px } DD { ! margin-left: 10px ! } ! diff -c -r xmulti200beta/xmaid/mod_default.c xmulti-current/xmaid/mod_default.c *** xmulti200beta/xmaid/mod_default.c Sat Dec 27 06:00:57 1997 --- xmulti-current/xmaid/mod_default.c Thu Jan 8 14:13:00 1998 *************** *** 79,87 **** a = animate_new(); if (!anim_gif_read_stream(a,fp)) { p->data[i] = a; ! } else ! animate_delete(a); fclose(fp); } } ANIM = p->data[0]; --- 79,92 ---- a = animate_new(); if (!anim_gif_read_stream(a,fp)) { p->data[i] = a; ! } else { ! fprintf(stderr, "cant read animated gif: %s\n", p->names[i]); ! exit(1); ! } fclose(fp); + } else { + perror(p->names[i]); + exit(1); } } ANIM = p->data[0]; diff -c -r xmulti200beta/xmaid/mod_nadenade.c xmulti-current/xmaid/mod_nadenade.c *** xmulti200beta/xmaid/mod_nadenade.c Sat Dec 27 07:46:16 1997 --- xmulti-current/xmaid/mod_nadenade.c Thu Jan 8 14:13:01 1998 *************** *** 58,66 **** Cursor cur[2]; } NadeNadeData; - static XrmOptionDescRec options[] = { - }; - #define offset(field) XtOffsetOf(NadeNadeData, field) static XtResource resources[] = { { --- 58,63 ---- *************** *** 306,313 **** ButtonReleaseMask, /* event mask */ FALSE, /* override redirect */ TRUE, /* mapped when managed */ ! options, /* options */ ! XtNumber(options), /* options number */ resources, /* resources */ XtNumber(resources), /* resource numvber */ 0 /* update_timing */ --- 303,310 ---- ButtonReleaseMask, /* event mask */ FALSE, /* override redirect */ TRUE, /* mapped when managed */ ! NULL, /* options */ ! 0, /* options number */ resources, /* resources */ XtNumber(resources), /* resource numvber */ 0 /* update_timing */ diff -c -r xmulti200beta/xmaid/mod_osouji.c xmulti-current/xmaid/mod_osouji.c *** xmulti200beta/xmaid/mod_osouji.c Sat Dec 27 06:27:13 1997 --- xmulti-current/xmaid/mod_osouji.c Thu Jan 8 14:13:01 1998 *************** *** 88,94 **** "rmopX", "MopX", XtRInt, sizeof(int), offset(mopx[1]), ! XtRImmediate, (XtPointer)128-16-20 }, { "mopY", "MopY", --- 88,94 ---- "rmopX", "MopX", XtRInt, sizeof(int), offset(mopx[1]), ! XtRImmediate, (XtPointer)(128-16-20) }, { "mopY", "MopY", diff -c -r xmulti200beta/xmaid/xmaidmsg.c xmulti-current/xmaid/xmaidmsg.c *** xmulti200beta/xmaid/xmaidmsg.c Mon Dec 22 13:20:00 1997 --- xmulti-current/xmaid/xmaidmsg.c Thu Jan 8 14:13:01 1998 *************** *** 79,85 **** XMaidMsgInfo *msg = cl; if ((len = write(*fdp, OUTPUT->p, OUTPUT->len)) >= 0) { ! OUTPUT->p += len; OUTPUT->len -= len; if (OUTPUT->len > 0) return; --- 79,85 ---- XMaidMsgInfo *msg = cl; if ((len = write(*fdp, OUTPUT->p, OUTPUT->len)) >= 0) { ! OUTPUT->p = (char*)(OUTPUT->p) + len; OUTPUT->len -= len; if (OUTPUT->len > 0) return; *************** *** 238,245 **** if (!strncmp(r, "xmaid:", 6)) { r += 6; if (!strncmp(r, "end", 3)) { ! XtAppSetExitFlag(XtWidgetToApplicationContext((Widget)XMW)); ! XtDestroyWidget((Widget)XMW); } else if (!strncmp(r, "kill", 4)) { childinfo_kill(atoi(r + 5)); xmaid_msginfo_entry_file(msg, strdup(MSGPATH)); --- 238,244 ---- if (!strncmp(r, "xmaid:", 6)) { r += 6; if (!strncmp(r, "end", 3)) { ! XtAppSetExitFlag(XtWidgetToApplicationContext((Widget)XMW)); } else if (!strncmp(r, "kill", 4)) { childinfo_kill(atoi(r + 5)); xmaid_msginfo_entry_file(msg, strdup(MSGPATH)); *************** *** 281,286 **** --- 280,287 ---- XMaidStartMove(XMW); } else { XMaidDeleteMsgInfo(XMW, msg); + if (MSGBUF) + XtDestroyWidget(MSGBUF); xmaidmsginfo_delete(msg); } } *************** *** 385,392 **** MyClose((Widget)XMW, FILEDESC); if (INPUTBUF) free(INPUTBUF); - if (MSGBUF) - XtDestroyWidget(MSGBUF); free(msg); } } --- 386,391 ----