ivtools-0.7.7-0.7.8.diffs Vectaport Inc. June 10th 1999 This file, when applied with patch, transforms an ivtools source tree with all the changes made to Vectaport's copy between 0.7.7 and 0.7.8. See the diff to the ivtools-0.7/CHANGES file below for details of what's new. To apply this patch, cd to the top directory of the ivtools-0.7 source tree (the directory with "config" and "src" sub-directories), and pipe the file to patch, i.e.: patch -p0 schedule_timer --- 51,65 ---- const char* ComterpHandler::timeoutscript() { return symbol_pntr(_timeoutscriptid); } void ComterpHandler::timeoutscript(const char* timeoutscript) { if (timeoutscript) ! timeoutscriptid(symbol_add((char *)timeoutscript)); } int ComterpHandler::timeoutscriptid() { return _timeoutscriptid; } void ComterpHandler::timeoutscriptid(int timeoutscriptid) { + if (_timeoutscriptid != -1) + COMTERP_REACTOR::instance ()->cancel_timer (this); + _timeoutscriptid = timeoutscriptid; if (_timeoutscriptid != -1) { if (COMTERP_REACTOR::instance ()->schedule_timer *************** *** 68,75 **** /* ACE_ERROR_RETURN ((LM_ERROR, "can'(%P|%t) t register with reactor\n"), -1) */; } - else - COMTERP_REACTOR::instance ()->cancel_timer (this); } void --- 70,75 ---- *************** *** 163,169 **** comterp_->_outfunc = (outfuncptr)&ComTerpServ::fd_fputs; #if 1 ! int status = comterp_->ComTerp::run(true); #else if (comterp_->read_expr()) { if (comterp_->eval_expr()) { --- 163,169 ---- comterp_->_outfunc = (outfuncptr)&ComTerpServ::fd_fputs; #if 1 ! int status = comterp_->ComTerp::run(false /* !once */); #else if (comterp_->read_expr()) { if (comterp_->eval_expr()) { *************** *** 203,210 **** return -1; else { ! ACE_OS::strncpy (this->peer_name_, ! addr.get_host_name (), MAXHOSTNAMELEN + 1); if (COMTERP_REACTOR::instance ()->register_handler --- 203,212 ---- return -1; else { ! const char* hostname = addr.get_host_name(); ! char buffer[MAXHOSTNAMELEN]; ! addr.addr_to_string(buffer, MAXHOSTNAMELEN); ! ACE_OS::strncpy (this->peer_name_, buffer, MAXHOSTNAMELEN + 1); if (COMTERP_REACTOR::instance ()->register_handler Index: ComTerp/comterp.c diff -c ComTerp/comterp.c:1.5 ComTerp/comterp.c:1.7 *** ComTerp/comterp.c:1.5 Mon May 3 13:09:13 1999 --- src/ComTerp/comterp.c Mon Jun 7 14:48:22 1999 *************** *** 594,599 **** --- 594,603 ---- return _quitflag; } + void ComTerp::quitflag(boolean flag) { + _quitflag = flag; + } + int ComTerp::run(boolean once) { int status = 0; _errbuf[0] = '\0'; *************** *** 605,612 **** } else fbuf.attach(fileno(stdout)); ostream out(&fbuf); ! while (!eof() && !quitflag()) { if (read_expr()) { eval_expr(); --- 609,617 ---- } else fbuf.attach(fileno(stdout)); ostream out(&fbuf); + boolean eolflag = false; ! while (!eof() && !quitflag() && !eolflag) { if (read_expr()) { eval_expr(); *************** *** 628,634 **** if (strlen(_errbuf)>0) { out << _errbuf << "\n"; out.flush(); _errbuf[0] = '\0'; ! } } _stack_top = -1; if (once) break; --- 633,640 ---- if (strlen(_errbuf)>0) { out << _errbuf << "\n"; out.flush(); _errbuf[0] = '\0'; ! } else ! eolflag = true; } _stack_top = -1; if (once) break; Index: ComTerp/comterp.h diff -c ComTerp/comterp.h:1.2 ComTerp/comterp.h:1.4 *** ComTerp/comterp.h:1.2 Wed Jan 20 16:26:31 1999 --- src/ComTerp/comterp.h Mon Jun 7 14:48:22 1999 *************** *** 136,141 **** --- 136,143 ---- void quit(boolean quitflag=true); // set flag that will cause a quit to happen as soon as possible. + void quitflag(boolean flag); + // set flag that will cause a quit to happen as soon as possible. boolean quitflag(); // return value of flag that will cause a quit to happen as soon as possible. virtual void exit(int status=0); Index: ComTerp/comterpserv.c diff -c ComTerp/comterpserv.c:1.1 ComTerp/comterpserv.c:1.2 *** ComTerp/comterpserv.c:1.1 Fri Jan 15 09:28:51 1999 --- src/ComTerp/comterpserv.c Fri May 7 10:55:58 1999 *************** *** 30,35 **** --- 30,40 ---- #include #include + #if BUFSIZ>1024 + #undef BUFSIZ + #define BUFSIZ 1024 + #endif + ComTerpServ::ComTerpServ(int bufsize, int fd) : ComTerp() { *************** *** 246,252 **** _outfunc = nil; _linenum = 0; ! const int bufsiz = BUFSIZ; char inbuf[bufsiz]; char outbuf[bufsiz]; inbuf[0] = '\0'; --- 251,257 ---- _outfunc = nil; _linenum = 0; ! const int bufsiz = BUFSIZ*BUFSIZ; char inbuf[bufsiz]; char outbuf[bufsiz]; inbuf[0] = '\0'; Index: ComTerp/listfunc.h diff -c ComTerp/listfunc.h:1.1 ComTerp/listfunc.h:1.2 *** ComTerp/listfunc.h:1.1 Mon May 3 11:30:37 1999 --- src/ComTerp/listfunc.h Mon Jun 7 13:00:00 1999 *************** *** 52,58 **** virtual void execute(); virtual const char* docstring() { ! return "val=at(list n) -- return the nth item in a list"; } }; #endif /* !defined(_listfunc_h) */ --- 52,58 ---- virtual void execute(); virtual const char* docstring() { ! return "val=size(list -- return the size of the list"; } }; #endif /* !defined(_listfunc_h) */ Index: ComUnidraw/unifunc.c diff -c ComUnidraw/unifunc.c:1.5 ComUnidraw/unifunc.c:1.6 *** ComUnidraw/unifunc.c:1.5 Mon May 3 11:31:13 1999 --- src/ComUnidraw/unifunc.c Fri May 7 10:56:31 1999 *************** *** 244,249 **** --- 244,253 ---- ComValue viewval(stack_arg(0)); AttributeList* al = stack_keys(); reset_stack(); + if (!viewval.is_object()) { + push_stack(ComValue::nullval()); + return; + } ComponentView* view = (ComponentView*)viewval.obj_val(); OverlayComp* comp = (OverlayComp*)view->GetSubject(); Index: ComUtil/optable.c diff -c ComUtil/optable.c:1.1 ComUtil/optable.c:1.2 *** ComUtil/optable.c:1.1 Fri Jan 15 09:28:38 1999 --- src/ComUtil/optable.c Mon Jun 7 12:59:55 1999 *************** *** 102,114 **** {"==", "eq", 45, FALSE, OPTYPE_BINARY }, {"&&", "and", 41, FALSE, OPTYPE_BINARY }, {"||", "or", 40, FALSE, OPTYPE_BINARY }, {"%=", "mod_assign", 30, TRUE, OPTYPE_BINARY }, {"*=", "mpy_assign", 30, TRUE, OPTYPE_BINARY }, {"+=", "add_assign", 30, TRUE, OPTYPE_BINARY }, {"-=", "sub_assign", 30, TRUE, OPTYPE_BINARY }, {"/=", "div_assign", 30, TRUE, OPTYPE_BINARY }, {"=", "assign", 30, TRUE, OPTYPE_BINARY }, - {",", "stream", 20, FALSE, OPTYPE_BINARY }, {";", "seq", 10, FALSE, OPTYPE_BINARY }, }; --- 102,114 ---- {"==", "eq", 45, FALSE, OPTYPE_BINARY }, {"&&", "and", 41, FALSE, OPTYPE_BINARY }, {"||", "or", 40, FALSE, OPTYPE_BINARY }, + {",", "stream", 35, FALSE, OPTYPE_BINARY }, {"%=", "mod_assign", 30, TRUE, OPTYPE_BINARY }, {"*=", "mpy_assign", 30, TRUE, OPTYPE_BINARY }, {"+=", "add_assign", 30, TRUE, OPTYPE_BINARY }, {"-=", "sub_assign", 30, TRUE, OPTYPE_BINARY }, {"/=", "div_assign", 30, TRUE, OPTYPE_BINARY }, {"=", "assign", 30, TRUE, OPTYPE_BINARY }, {";", "seq", 10, FALSE, OPTYPE_BINARY }, }; *************** *** 917,929 **** == eq 45 N BINARY && and 41 N BINARY || or 40 N BINARY %= mod_assign 30 Y BINARY *= mpy_assign 30 Y BINARY += add_assign 30 Y BINARY -= sub_assign 30 Y BINARY /= div_assign 30 Y BINARY = assign 30 Y BINARY - , stream 20 N BINARY ; seq 10 N BINARY --- 917,929 ---- == eq 45 N BINARY && and 41 N BINARY || or 40 N BINARY + , stream 35 N BINARY %= mod_assign 30 Y BINARY *= mpy_assign 30 Y BINARY += add_assign 30 Y BINARY -= sub_assign 30 Y BINARY /= div_assign 30 Y BINARY = assign 30 Y BINARY ; seq 10 N BINARY Index: FrameUnidraw/framecomps.h diff -c FrameUnidraw/framecomps.h:1.3 FrameUnidraw/framecomps.h:1.4 *** FrameUnidraw/framecomps.h:1.3 Tue Feb 23 11:49:11 1999 --- src/FrameUnidraw/framecomps.h Fri May 7 10:56:35 1999 *************** *** 96,101 **** --- 96,102 ---- }; //: top-level component for flipbook document. + // FrameIdrawComp is a clone of OverlayIdrawComp derived from FramesComp. class FrameIdrawComp : public FramesComp { public: FrameIdrawComp(boolean add_bg = true, const char* pathname = nil, OverlayComp* parent = nil); Index: FrameUnidraw/framescripts.c diff -c FrameUnidraw/framescripts.c:1.1 FrameUnidraw/framescripts.c:1.2 *** FrameUnidraw/framescripts.c:1.1 Fri Jan 15 09:32:33 1999 --- src/FrameUnidraw/framescripts.c Fri May 7 10:56:35 1999 *************** *** 216,221 **** --- 216,228 ---- char* buf = buf1; FrameComp* bgframe = nil; + Iterator it; + comps->First(it); + if (!comps->Done(it)) { + OverlayComp* comp = (OverlayComp*) comps->GetComp(it); + if (comp->IsA(FRAME_COMP)) + bgframe = (FrameComp*) comp; + } while (in.good()) { frame = nil; Index: OverlayUnidraw/grayraster.c diff -c OverlayUnidraw/grayraster.c:1.2 OverlayUnidraw/grayraster.c:1.3 *** OverlayUnidraw/grayraster.c:1.2 Wed Jan 20 16:26:54 1999 --- src/OverlayUnidraw/grayraster.c Thu Jun 10 11:11:03 1999 *************** *** 30,36 **** --- 30,40 ---- #include #include + #if defined(__GLIBC__) && __GLIBC__>=2 + #include + #else #include + #endif #include #include Index: OverlayUnidraw/ovimport.c diff -c OverlayUnidraw/ovimport.c:1.11 OverlayUnidraw/ovimport.c:1.12 *** OverlayUnidraw/ovimport.c:1.11 Wed Mar 24 15:29:12 1999 --- src/OverlayUnidraw/ovimport.c Thu Jun 10 11:11:03 1999 *************** *** 2164,2170 **** --- 2164,2172 ---- raster->poke(column, row, float(red)/0xff, float(green)/0xff, float(blue)/0xff, 1.0); } + if (!in.good()) break; } + if (!in.good()) break; } raster->flush(); Index: comterp/README diff -c comterp/README:1.5 comterp/README:1.6 *** comterp/README:1.5 Mon May 3 13:09:16 1999 --- src/comterp/README Mon Jun 7 13:00:05 1999 *************** *** 90,102 **** == eq 45 L-to-R binary && and 41 L-to-R binary || or 40 L-to-R binary %= mod_assign 30 R-to-L binary *= mpy_assign 30 R-to-L binary += add_assign 30 R-to-L binary -= sub_assign 30 R-to-L binary /= div_assign 30 R-to-L binary = assign 30 R-to-L binary - , stream 20 L-to-R binary ; seq 10 L-to-R binary MATHEMATICAL COMMANDS: --- 90,102 ---- == eq 45 L-to-R binary && and 41 L-to-R binary || or 40 L-to-R binary + , stream 35 L-to-R binary %= mod_assign 30 R-to-L binary *= mpy_assign 30 R-to-L binary += add_assign 30 R-to-L binary -= sub_assign 30 R-to-L binary /= div_assign 30 R-to-L binary = assign 30 R-to-L binary ; seq 10 L-to-R binary MATHEMATICAL COMMANDS: Index: comterp/main.c diff -c comterp/main.c:1.6 comterp/main.c:1.7 *** comterp/main.c:1.6 Mon May 3 11:40:48 1999 --- src/comterp/main.c Thu Jun 10 11:10:29 1999 *************** *** 132,137 **** --- 132,139 ---- else { in.unget(); in.gets(&inbuf); + if (client_flag) + cout << inbuf << "\n"; } } Index: config_ivtools/params.def diff -c config_ivtools/params.def:1.10 config_ivtools/params.def:1.11 *** config_ivtools/params.def:1.10 Mon May 3 13:10:13 1999 --- config/params.def Thu Jun 10 11:43:29 1999 *************** *** 36,42 **** * VersionNumber */ #ifndef Version ! #define Version 0.7.7 #endif VERSION = Version --- 36,42 ---- * VersionNumber */ #ifndef Version ! #define Version 0.7.8 #endif VERSION = Version *************** *** 50,56 **** README INSTALL VERSION MANIFEST COPYRIGHT ANNOUNCE README.ivmkcm *.patch *.bugfix.? *.script \ *.sed comutil.arg comterp.err comutil.ci comterp.arg comterp.ci site.def.SUN4 \ site.def.LINUX site.def.SGI site.def.HP800 site.def.ALPHA WishList *.defaults *.cf HOWTO Copyright *.sh CHANGES CHANGES-0.? *.cpp ivmkmf *.bash *.1 *.3 \ ! config.guess config.sub configure configure.in MANIFEST.perceps *.mk config.mk.in *.tmpl *.flt *.m4 #endif REPOSITORY_FILES = RepositoryFiles --- 50,56 ---- README INSTALL VERSION MANIFEST COPYRIGHT ANNOUNCE README.ivmkcm *.patch *.bugfix.? *.script \ *.sed comutil.arg comterp.err comutil.ci comterp.arg comterp.ci site.def.SUN4 \ site.def.LINUX site.def.SGI site.def.HP800 site.def.ALPHA WishList *.defaults *.cf HOWTO Copyright *.sh CHANGES CHANGES-0.? *.cpp ivmkmf *.bash *.1 *.3 \ ! config.guess config.sub configure configure.in MANIFEST.perceps MANIFEST.comterp *.mk config.mk.in *.tmpl *.flt *.m4 #endif REPOSITORY_FILES = RepositoryFiles Index: include_std/version.h diff -c include_std/version.h:1.3 include_std/version.h:1.4 *** include_std/version.h:1.3 Mon May 3 13:10:04 1999 --- src/include/std/version.h Thu Jun 10 11:43:21 1999 *************** *** 1,2 **** ! #define VersionString "0.7.7" #define ReleaseString "ivtools-0.7" --- 1,2 ---- ! #define VersionString "0.7.8" #define ReleaseString "ivtools-0.7" Index: man1_ivtools/comterp.1 diff -c man1_ivtools/comterp.1:1.4 man1_ivtools/comterp.1:1.5 *** man1_ivtools/comterp.1:1.4 Mon May 3 13:10:08 1999 --- src/man/man1/comterp.1 Mon Jun 7 13:00:54 1999 *************** *** 99,111 **** == eq 45 L-to-R binary && and 41 L-to-R binary || or 40 L-to-R binary %= mod_assign 30 R-to-L binary *= mpy_assign 30 R-to-L binary += add_assign 30 R-to-L binary -= sub_assign 30 R-to-L binary /= div_assign 30 R-to-L binary = assign 30 R-to-L binary - , stream 20 L-to-R binary ; seq 10 L-to-R binary .fi --- 99,111 ---- == eq 45 L-to-R binary && and 41 L-to-R binary || or 40 L-to-R binary + , stream 35 L-to-R binary %= mod_assign 30 R-to-L binary *= mpy_assign 30 R-to-L binary += add_assign 30 R-to-L binary -= sub_assign 30 R-to-L binary /= div_assign 30 R-to-L binary = assign 30 R-to-L binary ; seq 10 L-to-R binary .fi Index: src_dispatch/dispatcher.c diff -c src_dispatch/dispatcher.c:1.2 src_dispatch/dispatcher.c:1.3 *** src_dispatch/dispatcher.c:1.2 Thu Apr 22 16:29:51 1999 --- src/Dispatch/dispatcher.c Thu Jun 10 11:10:36 1999 *************** *** 60,65 **** --- 60,69 ---- #endif } + #if defined(__GLIBC__) && __GLIBC__>=2 + #define fds_bits __fds_bits + #endif + Dispatcher* Dispatcher::_instance; class FdMask : public fd_set { Index: top_ivtools/COPYRIGHT diff -c top_ivtools/COPYRIGHT:1.3 top_ivtools/COPYRIGHT:1.4 *** top_ivtools/COPYRIGHT:1.3 Thu Mar 4 15:52:47 1999 --- ./COPYRIGHT Mon Jun 7 12:59:51 1999 *************** *** 1,5 **** /* ! * Copyright (c) 1999 Vectaport Inc., R.B. Kissh and Associates * Copyright (c) 1998 Vectaport Inc., R.B. Kissh and Associates, Eric F. Kahler * Copyright (c) 1997 Vectaport Inc., R.B. Kissh and Associates * Copyright (c) 1996 Vectaport Inc., R.B. Kissh and Associates, Cider Press --- 1,5 ---- /* ! * Copyright (c) 1999 Vectaport Inc., I.E.T. Inc, R.B. Kissh and Associates * Copyright (c) 1998 Vectaport Inc., R.B. Kissh and Associates, Eric F. Kahler * Copyright (c) 1997 Vectaport Inc., R.B. Kissh and Associates * Copyright (c) 1996 Vectaport Inc., R.B. Kissh and Associates, Cider Press Index: top_ivtools/INSTALL diff -c top_ivtools/INSTALL:1.15 top_ivtools/INSTALL:1.17 *** top_ivtools/INSTALL:1.15 Mon May 3 13:09:08 1999 --- ./INSTALL Thu Jun 10 11:42:29 1999 *************** *** 1,7 **** INSTALL for ivtools-0.7 ! Instructions for building ivtools-0.7.7 from source: 0. Compilation Environment --- 1,7 ---- INSTALL for ivtools-0.7 ! Instructions for building ivtools-0.7.8 from source: 0. Compilation Environment *************** *** 37,47 **** http://www.ph.tn.tudelft.nl/People/klamer/clippoly_entry.html ! Be sure to compile with -fPIC, then make a libclippoly.so in the ! clippoly directory with: "gcc -shared -o libclippoly.so *.o" (you can ! leave out test.o if you want). ! 0.e. You also might want to acquire and build ACE, a C++ middleware toolkit available from: http://www.cs.wustl.edu/%7Eschmidt/ACE.html --- 37,47 ---- http://www.ph.tn.tudelft.nl/People/klamer/clippoly_entry.html ! Add -fPIC to the CCFLAGS in the Makefile, then do a make, then make ! shared library in the clippoly directory with: "gcc -shared -o ! libclippoly.so *.o" (you can leave out test.o if you want). ! i0.e. You also might want to acquire and build ACE, a C++ middleware toolkit available from: http://www.cs.wustl.edu/%7Eschmidt/ACE.html *************** *** 95,101 **** 1.b Run the configure script in the top-level directory, by entering "./configure" followed by any of the following arguments(--with ! arguments are recognized with --enable as well): --with-ace= Path to ACE source --with-ace-libs= Path to ACE libraries --- 95,101 ---- 1.b Run the configure script in the top-level directory, by entering "./configure" followed by any of the following arguments(--with ! arguments are recognized as --enable as well): --with-ace= Path to ACE source --with-ace-libs= Path to ACE libraries Index: top_ivtools/README diff -c top_ivtools/README:1.10 top_ivtools/README:1.11 *** top_ivtools/README:1.10 Mon May 3 13:09:08 1999 --- ./README Thu Jun 10 11:42:29 1999 *************** *** 2,8 **** README for ivtools 0.7 ! This directory contains a release of ivtools 0.7.7 from Vectaport Inc.. You should read the rest of this file for information on what ivtools is and the INSTALL file for instructions on how to build it. It is known to build with many versions of gcc (<= gcc-2.7.2, >= --- 2,8 ---- README for ivtools 0.7 ! This directory contains a release of ivtools 0.7.8 from Vectaport Inc.. You should read the rest of this file for information on what ivtools is and the INSTALL file for instructions on how to build it. It is known to build with many versions of gcc (<= gcc-2.7.2, >= *************** *** 33,39 **** Read about finding and generating inline documentation below. A copy of the ivtools html documentation is available for download as well: ! http://www.vectaport.com/pub/src/ivtools-0.7.5-html.tgz * What is ivtools?: --- 33,39 ---- Read about finding and generating inline documentation below. A copy of the ivtools html documentation is available for download as well: ! http://www.vectaport.com/pub/src/ivtools-0.7.8-html.tgz * What is ivtools?: Index: top_ivtools/VERSION diff -c top_ivtools/VERSION:1.6 top_ivtools/VERSION:1.7 *** top_ivtools/VERSION:1.6 Mon May 3 13:09:08 1999 --- ./VERSION Thu Jun 10 11:42:29 1999 *************** *** 1 **** ! Release 0.7.7 --- 1 ---- ! Release 0.7.8