mirror of
git://slackware.nl/current.git
synced 2024-12-29 10:25:00 +01:00
bd9266d121
a/getty-ps-2.1.0b-x86_64-4.txz: Removed. a/lha-114i-x86_64-2.txz: Removed. Removed due to vague licensing terms. a/lhasa-0.3.1-x86_64-1.txz: Added. This is an extraction-only LHA utility with an OSI approved license. a/shadow-4.7-x86_64-2.txz: Rebuilt. Added /etc/environment.new to fix "sudo -i" noise. ap/lm_sensors-3.6.0-x86_64-1.txz: Upgraded. ap/vim-8.1.2174-x86_64-1.txz: Upgraded. l/netpbm-10.88.00-x86_64-1.txz: Upgraded. n/ca-certificates-20191018-noarch-1.txz: Upgraded. n/samba-4.11.1-x86_64-1.txz: Upgraded. xap/vim-gvim-8.1.2174-x86_64-1.txz: Upgraded. xap/xfractint-20.04p13-x86_64-2.txz: Removed. xap/xv-3.10a-x86_64-9.txz: Removed. extra/getty-ps/getty-ps-2.1.0b-x86_64-4.txz: Rebuilt. Moved here from the A series due to commercial use restrictions. extra/xfractint/xfractint-20.04p14-x86_64-1.txz: Upgraded. Moved here from the XAP series due to commercial use restrictions. extra/xv/xv-3.10a-x86_64-9.txz: Rebuilt. Moved here from the XAP series due to non-commercial use shareware license.
2745 lines
86 KiB
Diff
2745 lines
86 KiB
Diff
Installation Instructions:
|
||
|
||
This patch will update XV 3.10 to 3.10a.
|
||
|
||
Copy this file into the top-level XV source directory, and apply it using:
|
||
patch -p0 <xv-3.10a.patch
|
||
|
||
Then do a 'make clean', followed by a 'make' (or 'make install').
|
||
|
||
Note: if you don't have a copy of the 'patch' utility, you can get one
|
||
via anonymous ftp on ftp.cis.upenn.edu, in pub/xv. Of course,
|
||
once you're there, it may be easier to just pick up the latest copy
|
||
of the XV distribution, rather than try to patch your existing copy,
|
||
but hey, that's up to you...
|
||
|
||
|
||
|
||
diff -c -r ../xv-3.10/CHANGELOG ./CHANGELOG
|
||
*** ../xv-3.10/CHANGELOG Thu Dec 22 14:18:39 1994
|
||
--- ./CHANGELOG Mon Jan 23 18:21:55 1995
|
||
***************
|
||
*** 1,12 ****
|
||
Revision History
|
||
----------------
|
||
|
||
! Make_xv.com in vms directory wouldn't build xvxpm.c or xvfits.c (and thus, XV!)
|
||
! (Rick Dyson (dyson@sunfish.Physics.UIowa.Edu))
|
||
|
||
|
||
! XV 3.10 Public Release 12/21/94
|
||
! -------------------------
|
||
Bug Fix: Greyscale downsampling bug in JPEG code fixed.
|
||
(Tom Lane (tgl@sss.pgh.pa.us))
|
||
|
||
--- 1,84 ----
|
||
Revision History
|
||
----------------
|
||
|
||
! XV 3.10a bug-fix release 12/29/94
|
||
! ----------------------------------
|
||
! Bug Fix: Problems loading JPEG files in 8-bit mode on some systems.
|
||
! (Rick Richardson (rick@digibd.com))
|
||
! (Chad R. Larson (chad@anasazi.com))
|
||
|
||
+ Bug Fix: Added '-pkludge' command line option and 'popupKludge' boolean
|
||
+ resource. If true, selects the 'old-style' pop-up window positioning
|
||
+ code. The various popup windows should appear with the Ok button
|
||
+ (or whatever) centered around the cursor. If the windows routinely
|
||
+ pop up slightly off-center from the cursor, try turning this on.
|
||
|
||
! Bug Fix: '3' and 'Q' characters in the Text Annotation character set were
|
||
! boogered up... (Sidik Isani (si@acpub.duke.edu))
|
||
!
|
||
! Bug Fix: '-iconic' option wasn't working.
|
||
! (David Pesetsky (iedsp@agt.gmeds.com))
|
||
!
|
||
! Bug Fix: Didn't properly read greyscale RLE files.
|
||
! (Robert Cunningham (rkc@xn.ll.mit.edu))
|
||
!
|
||
! Bug Fix: 'AutoCrop' on 24-bit images could produce 0x0 images. A problem!
|
||
! (Leon Shaner (leon@mtu.edu))
|
||
!
|
||
! Bug Fix: GIF reader would blow up if there were multiple comments.
|
||
! (Markus Gyger (mgyger@itr.ch))
|
||
!
|
||
! Bug Fix: Behavior under virtual window managers may be improved.
|
||
! (steveg@pa.dec.com)
|
||
!
|
||
! Enhancement: Text in 'temperature gauge' (during slow operations) is now
|
||
! XOR'd on, so it isn't obscured by the filled area of the gauge.
|
||
! (Jerry Whelan (jerryw@bnl.gov))
|
||
!
|
||
! Enhancement: man page for vdcomp written
|
||
! (James Ralston Crawford (qralston+@pitt.edu))
|
||
!
|
||
! Enhancement: PCX code can now read 24-bit PCX files.
|
||
! (Dave Cohrs (cohrs@legato.com))
|
||
!
|
||
! Portability: Patch for Linux (David Hankins (dhankins@oz.net))
|
||
!
|
||
! Portability: Patches for ISC 4.0 Interactive/SunSoft Unix
|
||
! (Jack Bailey (jjb@jagware.bcc.com))
|
||
!
|
||
! Portability: Compiler noise (from Sun's Professional C compiler) cleaned up.
|
||
! (John Fritz (jfritz@bpo-ess.ceco.com))
|
||
!
|
||
! Portability: Many nits picked by Pyramid compiler
|
||
! (Chad R. Larson (chad@anasazi.com))
|
||
!
|
||
! Portability: Some malloc's in xvfits.c needed casting.
|
||
! (Bill Silvert (sysop@biome.bio.ns.ca))
|
||
!
|
||
! Portability: Further VMS problems solved.
|
||
! (Rick Dyson (dyson@sunfish.physics.uiowa.edu))
|
||
!
|
||
! Portability: select() on HP-UX 9.x expects (int *) instead of (fd_set *)
|
||
! (Richard Allen (ra@os.is))
|
||
!
|
||
! Portability: Removed 'const' from second parameter in decl. for decode_run()
|
||
! in tif_fax3.c. (Glenn Spargo (gspargo@ctron.com))
|
||
!
|
||
! Portability: Added 'fcntl.h' to xv.h, as some systems may not have O_RDONLY
|
||
! declared elsewhere. (Mitchell Blank (blankm@cae.wisc.edu))
|
||
!
|
||
! Portability: Font selection strings in xv.c didn't have enough '*'s in them.
|
||
! Would fail on some X servers.
|
||
! (Rick Richardson (rick@digibd.com))
|
||
!
|
||
! Second XV 3.10 Public Release 12/22/94
|
||
! ----------------------------------------
|
||
! Bug Fix: Make_xv.com in vms directory wouldn't build xvxpm.c or xvfits.c
|
||
! (and thus, XV!) (Rick Dyson (dyson@sunfish.Physics.UIowa.Edu))
|
||
!
|
||
!
|
||
! Initial XV 3.10 Public Release 12/21/94
|
||
! ----------------------------------------
|
||
Bug Fix: Greyscale downsampling bug in JPEG code fixed.
|
||
(Tom Lane (tgl@sss.pgh.pa.us))
|
||
|
||
diff -c -r ../xv-3.10/Imakefile ./Imakefile
|
||
*** ../xv-3.10/Imakefile Thu Dec 22 14:12:21 1994
|
||
--- ./Imakefile Fri Jan 13 15:24:01 1995
|
||
***************
|
||
*** 264,269 ****
|
||
--- 264,270 ----
|
||
InstallManPageLong(docs/bggen,$(MANDIR),bggen)
|
||
InstallManPageLong(docs/xcmap,$(MANDIR),xcmap)
|
||
InstallManPageLong(docs/xvp2p,$(MANDIR),xvpictoppm)
|
||
+ InstallManPageLong(docs/vdcomp,$(MANDIR),vdcomp)
|
||
|
||
tar:
|
||
tar cf xv.tar Makefile* Imakefile *.c *.h bits docs \
|
||
|
||
diff -c -r ../xv-3.10/Makefile ./Makefile
|
||
*** ../xv-3.10/Makefile Thu Jan 19 13:40:09 1995
|
||
--- ./Makefile Mon Jan 23 15:20:54 1995
|
||
***************
|
||
*** 92,99 ****
|
||
--- 92,110 ----
|
||
#MCHN= -Dhpux -D_HPUX_SOURCE
|
||
# To use old HP compilers (HPUX 7.0 or so), you may need
|
||
#MCHN= -Dhpux -D_HPUX_SOURCE +Ns4000
|
||
+ #
|
||
+ # also, if you're using HP's compiler, add '-Aa' to whichever of those
|
||
+ # two lines you're using, to turn on ANSI C mode. Or so I'm told.
|
||
+ #
|
||
+ # note: You may need to add '-I/usr/include/X11R5' (or R6, or whatever)
|
||
+ # to whichever of those lines you used, as HP tends to store their X11
|
||
+ # include files in a non-standard place...
|
||
|
||
|
||
+ ### for LINUX, uncomment the following line
|
||
+ #MCHN = -DLINUX
|
||
+
|
||
+
|
||
# For SCO 1.1 (UNIX 3.2v2) machines, uncomment the following:
|
||
#MCHN = -Dsco -DPOSIX
|
||
#
|
||
***************
|
||
*** 111,120 ****
|
||
#
|
||
#MCHN = -q extensions=pcc_c -D__UMAXV__ -L/usr2/usr/lib/X11 -DSVR4
|
||
|
||
! # For Interactive Unix System machines
|
||
! # you'll want to modify add the following options to the end of the
|
||
! # LIBS definition (below) (or so I'm told)
|
||
! # -lnsl_s -linet -lgen
|
||
|
||
|
||
#----------'Roll Your Own' Options----------
|
||
--- 122,129 ----
|
||
#
|
||
#MCHN = -q extensions=pcc_c -D__UMAXV__ -L/usr2/usr/lib/X11 -DSVR4
|
||
|
||
! # For Interactive/SunSoft Unix ISC 4.0 (whatever *that* is!)
|
||
! #MCHN = -DSVR4 -DBSDTYPES
|
||
|
||
|
||
#----------'Roll Your Own' Options----------
|
||
***************
|
||
*** 233,238 ****
|
||
--- 242,248 ----
|
||
cp docs/bggen.man $(MANDIR)/bggen.$(MANSUF)
|
||
cp docs/xcmap.man $(MANDIR)/xcmap.$(MANSUF)
|
||
cp docs/xvp2p.man $(MANDIR)/xvpictoppm.$(MANSUF)
|
||
+ cp docs/vdcomp.man $(MANDIR)/vdcomp.$(MANSUF)
|
||
cp docs/xvdocs.ps* $(LIBDIR)
|
||
|
||
tar:
|
||
|
||
diff -c -r ../xv-3.10/Makefile.std ./Makefile.std
|
||
*** ../xv-3.10/Makefile.std Thu Dec 22 14:12:21 1994
|
||
--- ./Makefile.std Mon Jan 23 20:06:26 1995
|
||
***************
|
||
*** 92,99 ****
|
||
--- 92,110 ----
|
||
#MCHN= -Dhpux -D_HPUX_SOURCE
|
||
# To use old HP compilers (HPUX 7.0 or so), you may need
|
||
#MCHN= -Dhpux -D_HPUX_SOURCE +Ns4000
|
||
+ #
|
||
+ # also, if you're using HP's compiler, add '-Aa' to whichever of those
|
||
+ # two lines you're using, to turn on ANSI C mode. Or so I'm told.
|
||
+ #
|
||
+ # note: You may need to add '-I/usr/include/X11R5' (or R6, or whatever)
|
||
+ # to whichever of those lines you used, as HP tends to store their X11
|
||
+ # include files in a non-standard place...
|
||
|
||
|
||
+ ### for LINUX, uncomment the following line
|
||
+ #MCHN = -DLINUX
|
||
+
|
||
+
|
||
# For SCO 1.1 (UNIX 3.2v2) machines, uncomment the following:
|
||
#MCHN = -Dsco -DPOSIX
|
||
#
|
||
***************
|
||
*** 111,120 ****
|
||
#
|
||
#MCHN = -q extensions=pcc_c -D__UMAXV__ -L/usr2/usr/lib/X11 -DSVR4
|
||
|
||
! # For Interactive Unix System machines
|
||
! # you'll want to modify add the following options to the end of the
|
||
! # LIBS definition (below) (or so I'm told)
|
||
! # -lnsl_s -linet -lgen
|
||
|
||
|
||
#----------'Roll Your Own' Options----------
|
||
--- 122,129 ----
|
||
#
|
||
#MCHN = -q extensions=pcc_c -D__UMAXV__ -L/usr2/usr/lib/X11 -DSVR4
|
||
|
||
! # For Interactive/SunSoft Unix ISC 4.0 (whatever *that* is!)
|
||
! #MCHN = -DSVR4 -DBSDTYPES
|
||
|
||
|
||
#----------'Roll Your Own' Options----------
|
||
***************
|
||
*** 233,238 ****
|
||
--- 242,248 ----
|
||
cp docs/bggen.man $(MANDIR)/bggen.$(MANSUF)
|
||
cp docs/xcmap.man $(MANDIR)/xcmap.$(MANSUF)
|
||
cp docs/xvp2p.man $(MANDIR)/xvpictoppm.$(MANSUF)
|
||
+ cp docs/vdcomp.man $(MANDIR)/vdcomp.$(MANSUF)
|
||
cp docs/xvdocs.ps* $(LIBDIR)
|
||
|
||
tar:
|
||
|
||
diff -c -r ../xv-3.10/xcmap.c ./xcmap.c
|
||
*** ../xv-3.10/xcmap.c Thu Dec 22 14:12:20 1994
|
||
--- ./xcmap.c Tue Jan 03 16:14:52 1995
|
||
***************
|
||
*** 102,108 ****
|
||
continue;
|
||
}
|
||
|
||
! strind = index(argv[i], ':'); /* old-style display */
|
||
if(strind != NULL) {
|
||
display = argv[i];
|
||
continue;
|
||
--- 102,108 ----
|
||
continue;
|
||
}
|
||
|
||
! strind = (char *) index(argv[i], ':'); /* old-style display */
|
||
if(strind != NULL) {
|
||
display = argv[i];
|
||
continue;
|
||
|
||
diff -c -r ../xv-3.10/xv.c ./xv.c
|
||
*** ../xv-3.10/xv.c Thu Dec 22 14:12:15 1994
|
||
--- ./xv.c Thu Jan 19 13:08:43 1995
|
||
***************
|
||
*** 25,33 ****
|
||
|
||
|
||
/* program needs one of the following fonts. Trys them in ascending order */
|
||
! #define FONT1 "-*-lucida-medium-r-*-*-12-*"
|
||
! #define FONT2 "-*-helvetica-medium-r-*-*-12-*"
|
||
! #define FONT3 "-*-helvetica-medium-r-*-*-11-*"
|
||
#define FONT4 "6x13"
|
||
#define FONT5 "fixed"
|
||
|
||
--- 25,33 ----
|
||
|
||
|
||
/* program needs one of the following fonts. Trys them in ascending order */
|
||
! #define FONT1 "-*-lucida-medium-r-*-*-12-*-*-*-*-*-*-*"
|
||
! #define FONT2 "-*-helvetica-medium-r-*-*-12-*-*-*-*-*-*-*"
|
||
! #define FONT3 "-*-helvetica-medium-r-*-*-11-*-*-*-*-*-*-*"
|
||
#define FONT4 "6x13"
|
||
#define FONT5 "fixed"
|
||
|
||
***************
|
||
*** 218,224 ****
|
||
fgstr = "#000000"; bgstr = "#B2C0DC";
|
||
histr = "#C6D5E2"; lostr = "#8B99B5";
|
||
|
||
! cmd = rindex(argv[0],'/');
|
||
if (!cmd) cmd = argv[0]; else cmd++;
|
||
|
||
tmpstr = (char *) getenv("TMPDIR");
|
||
--- 218,224 ----
|
||
fgstr = "#000000"; bgstr = "#B2C0DC";
|
||
histr = "#C6D5E2"; lostr = "#8B99B5";
|
||
|
||
! cmd = (char *) rindex(argv[0],'/');
|
||
if (!cmd) cmd = argv[0]; else cmd++;
|
||
|
||
tmpstr = (char *) getenv("TMPDIR");
|
||
***************
|
||
*** 261,267 ****
|
||
xorMasks[6] = 0xc4c4c4c5;
|
||
xorMasks[7] = 0xffffffff;
|
||
|
||
! kludge_offx = kludge_offy = 0;
|
||
|
||
conv24 = CONV24_SLOW; /* use 'slow' algorithm by default */
|
||
|
||
--- 261,267 ----
|
||
xorMasks[6] = 0xc4c4c4c5;
|
||
xorMasks[7] = 0xffffffff;
|
||
|
||
! kludge_offx = kludge_offy = winCtrPosKludge = 0;
|
||
|
||
conv24 = CONV24_SLOW; /* use 'slow' algorithm by default */
|
||
|
||
***************
|
||
*** 1107,1112 ****
|
||
--- 1107,1113 ----
|
||
if (rd_flag("nostat")) nostat = def_int;
|
||
if (rd_flag("ownCmap")) owncmap = def_int;
|
||
if (rd_flag("perfect")) perfect = def_int;
|
||
+ if (rd_flag("popupKludge")) winCtrPosKludge = def_int;
|
||
if (rd_str ("print")) strncpy(printCmd, def_str,
|
||
(size_t) PRINTCMDLEN);
|
||
if (rd_flag("pscompress")) pscomp = def_int;
|
||
***************
|
||
*** 1361,1366 ****
|
||
--- 1362,1368 ----
|
||
else if (!argcmp(argv[i],"-nostat", 4,1,&nostat)); /* nostat */
|
||
else if (!argcmp(argv[i],"-owncmap", 2,1,&owncmap)); /* own cmap */
|
||
else if (!argcmp(argv[i],"-perfect", 3,1,&perfect)); /* -perfect */
|
||
+ else if (!argcmp(argv[i],"-pkludge", 3,1,&winCtrPosKludge));
|
||
else if (!argcmp(argv[i],"-poll", 3,1,&polling)); /* chk mod? */
|
||
|
||
else if (!argcmp(argv[i],"-preset",3,0,&pm)) /* preset */
|
||
***************
|
||
*** 1615,1620 ****
|
||
--- 1617,1623 ----
|
||
printoption("[-/+nostat]");
|
||
printoption("[-/+owncmap]");
|
||
printoption("[-/+perfect]");
|
||
+ printoption("[-/+pkludge]");
|
||
printoption("[-/+poll]");
|
||
printoption("[-preset #]");
|
||
printoption("[-quick24]");
|
||
***************
|
||
*** 1683,1689 ****
|
||
|
||
int i;
|
||
|
||
! if (strlen(a1) < minlen || strlen(a2) < minlen) return 1;
|
||
if (strlen(a1) > strlen(a2)) return 1;
|
||
|
||
if (strncmp(a1+1, a2+1, strlen(a1)-1)) return 1;
|
||
--- 1686,1693 ----
|
||
|
||
int i;
|
||
|
||
! if ((strlen(a1) < (size_t) minlen) || (strlen(a2) < (size_t) minlen))
|
||
! return 1;
|
||
if (strlen(a1) > strlen(a2)) return 1;
|
||
|
||
if (strncmp(a1+1, a2+1, strlen(a1)-1)) return 1;
|
||
***************
|
||
*** 1860,1866 ****
|
||
|
||
|
||
/* chop off trailing ".Z", ".z", or ".gz" from displayed basefname, if any */
|
||
! if (strlen(basefname)>2 && strcmp(basefname+strlen(basefname)-2,".Z")==0)
|
||
basefname[strlen(basefname)-2]='\0';
|
||
else {
|
||
#ifdef GUNZIP
|
||
--- 1864,1871 ----
|
||
|
||
|
||
/* chop off trailing ".Z", ".z", or ".gz" from displayed basefname, if any */
|
||
! if (strlen(basefname) > (size_t) 2 &&
|
||
! strcmp(basefname+strlen(basefname)-2,".Z")==0)
|
||
basefname[strlen(basefname)-2]='\0';
|
||
else {
|
||
#ifdef GUNZIP
|
||
***************
|
||
*** 2698,2705 ****
|
||
to what it was. necessary because uncompress doesn't handle files
|
||
that don't end with '.Z' */
|
||
|
||
! if (strlen(name)>=2 && strcmp(name + strlen(name)-2,".Z")!=0 &&
|
||
! strcmp(name + strlen(name)-2,".z")!=0) {
|
||
strcpy(namez, name);
|
||
strcat(namez,".Z");
|
||
|
||
--- 2703,2711 ----
|
||
to what it was. necessary because uncompress doesn't handle files
|
||
that don't end with '.Z' */
|
||
|
||
! if (strlen(name) >= (size_t) 2 &&
|
||
! strcmp(name + strlen(name)-2,".Z")!=0 &&
|
||
! strcmp(name + strlen(name)-2,".z")!=0) {
|
||
strcpy(namez, name);
|
||
strcat(namez,".Z");
|
||
|
||
***************
|
||
*** 2890,2896 ****
|
||
char fullcmd[512], tmpname[64], str[512];
|
||
int i;
|
||
|
||
! if (!cmd || strlen(cmd)<2) return 1;
|
||
|
||
sprintf(tmpname,"%s/xvXXXXXX", tmpdir);
|
||
mktemp(tmpname);
|
||
--- 2896,2902 ----
|
||
char fullcmd[512], tmpname[64], str[512];
|
||
int i;
|
||
|
||
! if (!cmd || (strlen(cmd) < (size_t) 2)) return 1;
|
||
|
||
sprintf(tmpname,"%s/xvXXXXXX", tmpdir);
|
||
mktemp(tmpname);
|
||
***************
|
||
*** 3270,3276 ****
|
||
|
||
xwmh.icon_pixmap = iconPix;
|
||
xwmh.icon_mask = iconmask;
|
||
! xwmh.flags |= ( IconPixmapHint | IconMaskHint) ;
|
||
|
||
|
||
if (startIconic && firstTime) {
|
||
--- 3276,3282 ----
|
||
|
||
xwmh.icon_pixmap = iconPix;
|
||
xwmh.icon_mask = iconmask;
|
||
! xwmh.flags |= (IconPixmapHint | IconMaskHint);
|
||
|
||
|
||
if (startIconic && firstTime) {
|
||
***************
|
||
*** 3787,3793 ****
|
||
--- 3793,3802 ----
|
||
| EnterWindowMask | LeaveWindowMask );
|
||
|
||
StoreDeleteWindowProp(mainW);
|
||
+ XFlush(theDisp);
|
||
XMapWindow(theDisp,mainW);
|
||
+ XFlush(theDisp);
|
||
+ if (startIconic) sleep(2); /* give it time to get the window up...*/
|
||
}
|
||
}
|
||
|
||
diff -c -r ../xv-3.10/xv.h ./xv.h
|
||
*** ../xv-3.10/xv.h Thu Dec 22 14:12:15 1994
|
||
--- ./xv.h Mon Jan 23 15:22:23 1995
|
||
***************
|
||
*** 8,15 ****
|
||
#include "config.h"
|
||
|
||
|
||
! #define REVDATE "Version 3.10 Rev: 12/16/94"
|
||
! #define VERSTR "3.10"
|
||
|
||
/*
|
||
* uncomment the following, and modify for your site, but only if you've
|
||
--- 8,15 ----
|
||
#include "config.h"
|
||
|
||
|
||
! #define REVDATE "Version 3.10a Rev: 12/29/94"
|
||
! #define VERSTR "3.10a"
|
||
|
||
/*
|
||
* uncomment the following, and modify for your site, but only if you've
|
||
***************
|
||
*** 62,67 ****
|
||
--- 62,74 ----
|
||
#endif
|
||
|
||
|
||
+ #ifdef LINUX
|
||
+ # ifndef _LINUX_LIMITS_H
|
||
+ # include <linux/limits.h>
|
||
+ # endif
|
||
+ #endif
|
||
+
|
||
+
|
||
#include <X11/Xos.h> /* need type declarations immediately */
|
||
|
||
/*********************************************************/
|
||
***************
|
||
*** 198,203 ****
|
||
--- 205,217 ----
|
||
# include <limits.h>
|
||
# endif
|
||
|
||
+ /*** for select() call ***/
|
||
+ # ifdef __hpux
|
||
+ # define XV_FDTYPE (int *)
|
||
+ # else
|
||
+ # define XV_FDTYPE (fd_set *)
|
||
+ # endif
|
||
+
|
||
#endif /* NEEDSTIME */
|
||
|
||
|
||
***************
|
||
*** 214,219 ****
|
||
--- 228,237 ----
|
||
# include <dirent.h>
|
||
# endif
|
||
|
||
+ # if defined(SVR4) || defined(SYSV)
|
||
+ # include <fcntl.h>
|
||
+ # endif
|
||
+
|
||
# include <sys/param.h>
|
||
# include <sys/stat.h>
|
||
|
||
***************
|
||
*** 961,966 ****
|
||
--- 979,985 ----
|
||
WHERE int ch_offx,ch_offy; /* ChngAttr ofst for reparented windows */
|
||
WHERE int kludge_offx, /* WM kludges for SetWindowPos routine */
|
||
kludge_offy;
|
||
+ WHERE int winCtrPosKludge; /* kludge for popup positioning... */
|
||
|
||
WHERE int ignoreConfigs; /* an evil kludge... */
|
||
|
||
diff -c -r ../xv-3.10/xv24to8.c ./xv24to8.c
|
||
*** ../xv-3.10/xv24to8.c Thu Dec 22 14:12:15 1994
|
||
--- ./xv24to8.c Fri Jan 13 14:49:21 1995
|
||
***************
|
||
*** 374,382 ****
|
||
|
||
#define PPM_DEPTH(newp,p,oldmaxval,newmaxval) \
|
||
PPM_ASSIGN( (newp), \
|
||
! (int) PPM_GETR(p) * (newmaxval) / ((int)oldmaxval), \
|
||
! (int) PPM_GETG(p) * (newmaxval) / ((int)oldmaxval), \
|
||
! (int) PPM_GETB(p) * (newmaxval) / ((int)oldmaxval) )
|
||
|
||
|
||
/* Luminance macro. */
|
||
--- 374,382 ----
|
||
|
||
#define PPM_DEPTH(newp,p,oldmaxval,newmaxval) \
|
||
PPM_ASSIGN( (newp), \
|
||
! ((int) PPM_GETR(p)) * ((int)newmaxval) / ((int)oldmaxval), \
|
||
! ((int) PPM_GETG(p)) * ((int)newmaxval) / ((int)oldmaxval), \
|
||
! ((int) PPM_GETB(p)) * ((int)newmaxval) / ((int)oldmaxval) )
|
||
|
||
|
||
/* Luminance macro. */
|
||
|
||
diff -c -r ../xv-3.10/xvbrowse.c ./xvbrowse.c
|
||
*** ../xv-3.10/xvbrowse.c Thu Dec 22 14:12:20 1994
|
||
--- ./xvbrowse.c Thu Jan 19 12:49:17 1995
|
||
***************
|
||
*** 20,26 ****
|
||
#define NEEDSDIR
|
||
#include "xv.h"
|
||
|
||
! #ifdef VMS
|
||
typedef unsigned int mode_t; /* file mode bits */
|
||
#endif
|
||
|
||
--- 20,26 ----
|
||
#define NEEDSDIR
|
||
#include "xv.h"
|
||
|
||
! #if defined(VMS) || defined(isc)
|
||
typedef unsigned int mode_t; /* file mode bits */
|
||
#endif
|
||
|
||
***************
|
||
*** 2579,2585 ****
|
||
int rv;
|
||
|
||
/* temporarily excise trailing '/' char from br->path */
|
||
! if (strlen(br->path)>2 && br->path[strlen(br->path)-1] == '/')
|
||
br->path[strlen(br->path)-1] = '\0';
|
||
|
||
rv = chdir(br->path);
|
||
--- 2579,2585 ----
|
||
int rv;
|
||
|
||
/* temporarily excise trailing '/' char from br->path */
|
||
! if ((strlen(br->path) > (size_t) 2) && br->path[strlen(br->path)-1] == '/')
|
||
br->path[strlen(br->path)-1] = '\0';
|
||
|
||
rv = chdir(br->path);
|
||
***************
|
||
*** 3544,3550 ****
|
||
case RFT_PBM: if (xv_strstr(pinfo.fullInfo, "raw")) strcat(str,"Raw ");
|
||
else strcat(str,"Ascii ");
|
||
|
||
! for (i=0; i<3 && strlen(pinfo.fullInfo)>3; i++) {
|
||
str1[0] = pinfo.fullInfo[i]; str1[1] = '\0';
|
||
strcat(str, str1);
|
||
}
|
||
--- 3544,3550 ----
|
||
case RFT_PBM: if (xv_strstr(pinfo.fullInfo, "raw")) strcat(str,"Raw ");
|
||
else strcat(str,"Ascii ");
|
||
|
||
! for (i=0; i<3 && (strlen(pinfo.fullInfo)>(size_t)3); i++){
|
||
str1[0] = pinfo.fullInfo[i]; str1[1] = '\0';
|
||
strcat(str, str1);
|
||
}
|
||
***************
|
||
*** 4521,4527 ****
|
||
|
||
/* try to delete a thumbnail file, as well. ignore errors */
|
||
strcpy(buf1, name); /* tmp1 = leading path of name */
|
||
! tmp = rindex(buf1, '/');
|
||
if (!tmp) strcpy(buf1,".");
|
||
else *tmp = '\0';
|
||
|
||
--- 4521,4527 ----
|
||
|
||
/* try to delete a thumbnail file, as well. ignore errors */
|
||
strcpy(buf1, name); /* tmp1 = leading path of name */
|
||
! tmp = (char *) rindex(buf1, '/');
|
||
if (!tmp) strcpy(buf1,".");
|
||
else *tmp = '\0';
|
||
|
||
diff -c -r ../xv-3.10/xvbutt.c ./xvbutt.c
|
||
*** ../xv-3.10/xvbutt.c Thu Dec 22 14:12:16 1994
|
||
--- ./xvbutt.c Tue Jan 03 16:19:51 1995
|
||
***************
|
||
*** 961,967 ****
|
||
|
||
/* truncate at TAB, if any */
|
||
strcpy(stbuf, str);
|
||
! if ((str = index(stbuf, '\t')) != NULL) *str = '\0';
|
||
str = stbuf;
|
||
|
||
x1 = CENTERX(mfinfo, x + w/2, str);
|
||
--- 961,967 ----
|
||
|
||
/* truncate at TAB, if any */
|
||
strcpy(stbuf, str);
|
||
! if ((str = (char *) index(stbuf, '\t')) != NULL) *str = '\0';
|
||
str = stbuf;
|
||
|
||
x1 = CENTERX(mfinfo, x + w/2, str);
|
||
***************
|
||
*** 1073,1079 ****
|
||
char *sp, str[256];
|
||
|
||
strcpy(str, mb->list[i]);
|
||
! sp = index(str, '\t');
|
||
j = StringWidth(sp+1);
|
||
if (j>mtabwide) mtabwide = j;
|
||
|
||
--- 1073,1079 ----
|
||
char *sp, str[256];
|
||
|
||
strcpy(str, mb->list[i]);
|
||
! sp = (char *) index(str, '\t');
|
||
j = StringWidth(sp+1);
|
||
if (j>mtabwide) mtabwide = j;
|
||
|
||
***************
|
||
*** 1139,1145 ****
|
||
for (i=0; i<mb->nlist; i++) {
|
||
char txtstr[256], *tabstr;
|
||
strcpy(txtstr, mb->list[i]);
|
||
! if ((tabstr = index(txtstr, '\t'))) {
|
||
*tabstr = '\0'; tabstr++;
|
||
}
|
||
|
||
--- 1139,1145 ----
|
||
for (i=0; i<mb->nlist; i++) {
|
||
char txtstr[256], *tabstr;
|
||
strcpy(txtstr, mb->list[i]);
|
||
! if ((tabstr = (char *) index(txtstr, '\t'))) {
|
||
*tabstr = '\0'; tabstr++;
|
||
}
|
||
|
||
diff -c -r ../xv-3.10/xvcolor.c ./xvcolor.c
|
||
*** ../xv-3.10/xvcolor.c Thu Dec 22 14:12:17 1994
|
||
--- ./xvcolor.c Fri Jan 06 14:29:23 1995
|
||
***************
|
||
*** 616,622 ****
|
||
*foo = "No r/w cells available. Using r/o color.";
|
||
|
||
tmp = GetISTR(ISTR_WARNING);
|
||
! if (strlen(tmp)>0) sprintf(tstr, "%s %s", tmp, foo);
|
||
else sprintf(tstr, "%s", foo);
|
||
SetISTR(ISTR_WARNING,tstr);
|
||
|
||
--- 616,622 ----
|
||
*foo = "No r/w cells available. Using r/o color.";
|
||
|
||
tmp = GetISTR(ISTR_WARNING);
|
||
! if (strlen(tmp) > (size_t) 0) sprintf(tstr, "%s %s", tmp, foo);
|
||
else sprintf(tstr, "%s", foo);
|
||
SetISTR(ISTR_WARNING,tstr);
|
||
|
||
***************
|
||
*** 790,799 ****
|
||
}
|
||
|
||
|
||
! void xvFreeColors(dp, cm,pixels, npixels, planes)
|
||
Display *dp;
|
||
Colormap cm;
|
||
! unsigned long pixels[];
|
||
int npixels;
|
||
unsigned long planes;
|
||
{
|
||
--- 790,799 ----
|
||
}
|
||
|
||
|
||
! void xvFreeColors(dp, cm, pixels, npixels, planes)
|
||
Display *dp;
|
||
Colormap cm;
|
||
! unsigned long *pixels;
|
||
int npixels;
|
||
unsigned long planes;
|
||
{
|
||
|
||
diff -c -r ../xv-3.10/xvcut.c ./xvcut.c
|
||
*** ../xv-3.10/xvcut.c Thu Dec 22 14:12:21 1994
|
||
--- ./xvcut.c Fri Jan 13 14:55:48 1995
|
||
***************
|
||
*** 760,766 ****
|
||
len |= ((int) data[2])<<16;
|
||
len |= ((int) data[3])<<24;
|
||
|
||
! XFree(data);
|
||
|
||
/* read the rest of the data (len bytes) */
|
||
i = XGetWindowProperty(theDisp, rootW, clipAtom, 1L,
|
||
--- 760,766 ----
|
||
len |= ((int) data[2])<<16;
|
||
len |= ((int) data[3])<<24;
|
||
|
||
! XFree((void *) data);
|
||
|
||
/* read the rest of the data (len bytes) */
|
||
i = XGetWindowProperty(theDisp, rootW, clipAtom, 1L,
|
||
***************
|
||
*** 774,780 ****
|
||
|
||
data1 = (byte *) malloc((size_t) len);
|
||
if (!data1) {
|
||
! XFree(data);
|
||
ErrPopUp("Insufficient memory to retrieve clipboard!", "\nShucks!");
|
||
return (byte *) NULL;
|
||
}
|
||
--- 774,780 ----
|
||
|
||
data1 = (byte *) malloc((size_t) len);
|
||
if (!data1) {
|
||
! XFree((void *) data);
|
||
ErrPopUp("Insufficient memory to retrieve clipboard!", "\nShucks!");
|
||
return (byte *) NULL;
|
||
}
|
||
***************
|
||
*** 785,791 ****
|
||
data1[3] = (len>>24) & 0xff;
|
||
xvbcopy((char *) data, (char *) data1+4, (size_t) len-4);
|
||
|
||
! XFree(data);
|
||
return data1;
|
||
}
|
||
}
|
||
--- 785,791 ----
|
||
data1[3] = (len>>24) & 0xff;
|
||
xvbcopy((char *) data, (char *) data1+4, (size_t) len-4);
|
||
|
||
! XFree((void *) data);
|
||
return data1;
|
||
}
|
||
}
|
||
|
||
diff -c -r ../xv-3.10/xvdial.c ./xvdial.c
|
||
*** ../xv-3.10/xvdial.c Thu Dec 22 14:12:17 1994
|
||
--- ./xvdial.c Tue Jan 03 16:20:31 1995
|
||
***************
|
||
*** 358,364 ****
|
||
|
||
if (dp->units) strcat(foo,dp->units);
|
||
foo1[0] = '\0';
|
||
! if (strlen(foo)<i) {
|
||
for (i = i - strlen(foo); i>0; i--) strcat(foo1," ");
|
||
}
|
||
strcat(foo1, foo);
|
||
--- 358,364 ----
|
||
|
||
if (dp->units) strcat(foo,dp->units);
|
||
foo1[0] = '\0';
|
||
! if (strlen(foo) < (size_t) i) {
|
||
for (i = i - strlen(foo); i>0; i--) strcat(foo1," ");
|
||
}
|
||
strcat(foo1, foo);
|
||
|
||
diff -c -r ../xv-3.10/xvdir.c ./xvdir.c
|
||
*** ../xv-3.10/xvdir.c Thu Dec 22 14:12:16 1994
|
||
--- ./xvdir.c Tue Jan 03 16:21:39 1995
|
||
***************
|
||
*** 650,656 ****
|
||
changedDir = strcmp(path, oldpath);
|
||
strcpy(oldpath, path);
|
||
|
||
! if (strlen(path)>1 && path[strlen(path)-1] != '/')
|
||
strcat(path,"/"); /* tack on a trailing '/' to make path consistent */
|
||
|
||
/* path will be something like: "/u3/bradley/src/weiner/whatever/" */
|
||
--- 650,656 ----
|
||
changedDir = strcmp(path, oldpath);
|
||
strcpy(oldpath, path);
|
||
|
||
! if ((strlen(path) > (size_t) 1) && path[strlen(path)-1] != '/')
|
||
strcat(path,"/"); /* tack on a trailing '/' to make path consistent */
|
||
|
||
/* path will be something like: "/u3/bradley/src/weiner/whatever/" */
|
||
***************
|
||
*** 851,857 ****
|
||
xvbcopy(&filename[curPos], &filename[curPos-1], (size_t) (len-curPos+1));
|
||
curPos--;
|
||
|
||
! if (strlen(filename)>0) scrollToFileName();
|
||
}
|
||
|
||
else if (c=='\025') { /* ^U: clear entire line */
|
||
--- 851,857 ----
|
||
xvbcopy(&filename[curPos], &filename[curPos-1], (size_t) (len-curPos+1));
|
||
curPos--;
|
||
|
||
! if (strlen(filename) > (size_t) 0) scrollToFileName();
|
||
}
|
||
|
||
else if (c=='\025') { /* ^U: clear entire line */
|
||
***************
|
||
*** 1023,1029 ****
|
||
XDrawLine(theDisp, dnamW, theGC, 2,0,2,LINEHIGH+5);
|
||
}
|
||
|
||
! if (enPos<strlen(filename)) { /* draw a "there's more over here" doowah */
|
||
XDrawLine(theDisp, dnamW, theGC, DNAMWIDE+5,0,DNAMWIDE+5,LINEHIGH+5);
|
||
XDrawLine(theDisp, dnamW, theGC, DNAMWIDE+4,0,DNAMWIDE+4,LINEHIGH+5);
|
||
XDrawLine(theDisp, dnamW, theGC, DNAMWIDE+3,0,DNAMWIDE+3,LINEHIGH+5);
|
||
--- 1023,1030 ----
|
||
XDrawLine(theDisp, dnamW, theGC, 2,0,2,LINEHIGH+5);
|
||
}
|
||
|
||
! if ((size_t) enPos < strlen(filename)) {
|
||
! /* draw a "there's more over here" doowah */
|
||
XDrawLine(theDisp, dnamW, theGC, DNAMWIDE+5,0,DNAMWIDE+5,LINEHIGH+5);
|
||
XDrawLine(theDisp, dnamW, theGC, DNAMWIDE+4,0,DNAMWIDE+4,LINEHIGH+5);
|
||
XDrawLine(theDisp, dnamW, theGC, DNAMWIDE+3,0,DNAMWIDE+3,LINEHIGH+5);
|
||
***************
|
||
*** 1538,1544 ****
|
||
if (*fname != '~') return 0; /* doesn't start with a tilde, don't expand */
|
||
|
||
/* look for the first '/' after the tilde */
|
||
! sp = index(fname,'/');
|
||
if (sp == 0) { /* no '/' after the tilde */
|
||
sp = fname+strlen(fname); /* sp = end of string */
|
||
}
|
||
--- 1539,1545 ----
|
||
if (*fname != '~') return 0; /* doesn't start with a tilde, don't expand */
|
||
|
||
/* look for the first '/' after the tilde */
|
||
! sp = (char *) index(fname,'/');
|
||
if (sp == 0) { /* no '/' after the tilde */
|
||
sp = fname+strlen(fname); /* sp = end of string */
|
||
}
|
||
|
||
diff -c -r ../xv-3.10/xvevent.c ./xvevent.c
|
||
*** ../xv-3.10/xvevent.c Thu Dec 22 14:12:17 1994
|
||
--- ./xvevent.c Mon Jan 23 18:20:24 1995
|
||
***************
|
||
*** 1407,1413 ****
|
||
okay = 0;
|
||
do {
|
||
i = GetStrPopUp(txt, labels, 2, buf, 64, "0123456789", 1);
|
||
! if (!i && strlen(buf)>0) { /* hit 'Ok', had a string entered */
|
||
/* check for page in range */
|
||
j = atoi(buf);
|
||
if (j>=1 && j<=numPages) {
|
||
--- 1407,1414 ----
|
||
okay = 0;
|
||
do {
|
||
i = GetStrPopUp(txt, labels, 2, buf, 64, "0123456789", 1);
|
||
! if (!i && strlen(buf) > (size_t) 0) {
|
||
! /* hit 'Ok', had a string entered */
|
||
/* check for page in range */
|
||
j = atoi(buf);
|
||
if (j>=1 && j<=numPages) {
|
||
***************
|
||
*** 2030,2035 ****
|
||
--- 2031,2037 ----
|
||
xwc.height = xwa->height;
|
||
|
||
|
||
+ #ifdef BAD_IDEA
|
||
/* if there is a virtual window manager running, then we should translate
|
||
the coordinates that are in terms of 'real' screen into coordinates
|
||
that are in terms of the 'virtual' root window
|
||
***************
|
||
*** 2043,2049 ****
|
||
xwc.x,xwc.y,x1,y1);
|
||
xwc.x = x1; xwc.y = y1;
|
||
}
|
||
!
|
||
|
||
|
||
if (DEBUG) {
|
||
--- 2045,2051 ----
|
||
xwc.x,xwc.y,x1,y1);
|
||
xwc.x = x1; xwc.y = y1;
|
||
}
|
||
! #endif
|
||
|
||
|
||
if (DEBUG) {
|
||
|
||
diff -c -r ../xv-3.10/xvfits.c ./xvfits.c
|
||
*** ../xv-3.10/xvfits.c Thu Dec 22 14:12:21 1994
|
||
--- ./xvfits.c Wed Dec 28 02:43:29 1994
|
||
***************
|
||
*** 69,75 ****
|
||
char basename[64];
|
||
|
||
if (fits_block == NULL) {
|
||
! fits_block = malloc((size_t) BLOCKSIZE);
|
||
if (!fits_block) FatalError("Insufficient memory for FITS block buffer");
|
||
}
|
||
|
||
--- 69,75 ----
|
||
char basename[64];
|
||
|
||
if (fits_block == NULL) {
|
||
! fits_block = (char *) malloc((size_t) BLOCKSIZE);
|
||
if (!fits_block) FatalError("Insufficient memory for FITS block buffer");
|
||
}
|
||
|
||
***************
|
||
*** 170,176 ****
|
||
byte rgb[256];
|
||
|
||
if (!fits_block) {
|
||
! fits_block = malloc((size_t) BLOCKSIZE);
|
||
if (!fits_block) FatalError("Insufficient memory for FITS block buffer");
|
||
}
|
||
|
||
--- 170,176 ----
|
||
byte rgb[256];
|
||
|
||
if (!fits_block) {
|
||
! fits_block = (char *) malloc((size_t) BLOCKSIZE);
|
||
if (!fits_block) FatalError("Insufficient memory for FITS block buffer");
|
||
}
|
||
|
||
***************
|
||
*** 498,504 ****
|
||
j++; /* make j length of comment */
|
||
if (j > 0) { /* skip blank comment cards */
|
||
if (fs->comment == NULL) {
|
||
! fs->comment = malloc((size_t) commsize);
|
||
if (fs->comment == NULL)
|
||
FatalError("Insufficient memory for comment buffer");
|
||
}
|
||
--- 498,504 ----
|
||
j++; /* make j length of comment */
|
||
if (j > 0) { /* skip blank comment cards */
|
||
if (fs->comment == NULL) {
|
||
! fs->comment = (char *) malloc((size_t) commsize);
|
||
if (fs->comment == NULL)
|
||
FatalError("Insufficient memory for comment buffer");
|
||
}
|
||
|
||
diff -c -r ../xv-3.10/xvgam.c ./xvgam.c
|
||
*** ../xv-3.10/xvgam.c Thu Dec 22 14:12:15 1994
|
||
--- ./xvgam.c Fri Jan 13 14:51:14 1995
|
||
***************
|
||
*** 1838,1844 ****
|
||
gMap[i] = gcmap[i];
|
||
bMap[i] = bcmap[i];
|
||
if (!ncols)
|
||
! cols[i] = (rMap[i] + gMap[i] + bMap[i] >= 128*3) ? white : black;
|
||
}
|
||
}
|
||
}
|
||
--- 1838,1845 ----
|
||
gMap[i] = gcmap[i];
|
||
bMap[i] = bcmap[i];
|
||
if (!ncols)
|
||
! cols[i] = (((int)rMap[i]) + ((int)gMap[i]) + ((int)bMap[i]) >= 128*3)
|
||
! ? white : black;
|
||
}
|
||
}
|
||
}
|
||
***************
|
||
*** 1903,1909 ****
|
||
bMap[col] = bGraf.func[bv];
|
||
|
||
if (!ncols)
|
||
! cols[col] = (rMap[col] + gMap[col] + bMap[col] >= 128*3) ? white : black;
|
||
|
||
if (DEBUG>1) fprintf(stderr," -> %d,%d,%d\n",rMap[col],gMap[col],bMap[col]);
|
||
}
|
||
--- 1904,1912 ----
|
||
bMap[col] = bGraf.func[bv];
|
||
|
||
if (!ncols)
|
||
! cols[col] =
|
||
! (((int)rMap[col]) + ((int)gMap[col]) + ((int)bMap[col]) >= 128*3)
|
||
! ? white : black;
|
||
|
||
if (DEBUG>1) fprintf(stderr," -> %d,%d,%d\n",rMap[col],gMap[col],bMap[col]);
|
||
}
|
||
|
||
diff -c -r ../xv-3.10/xvgif.c ./xvgif.c
|
||
*** ../xv-3.10/xvgif.c Thu Dec 22 14:12:15 1994
|
||
--- ./xvgif.c Tue Jan 10 14:54:41 1995
|
||
***************
|
||
*** 254,260 ****
|
||
|
||
|
||
if (cmtlen>0) { /* build into one un-blocked comment */
|
||
! cmt = (byte *) malloc((size_t) cmtlen);
|
||
if (!cmt) gifWarning("couldn't malloc space for comments\n");
|
||
else {
|
||
sp = cmt;
|
||
--- 254,260 ----
|
||
|
||
|
||
if (cmtlen>0) { /* build into one un-blocked comment */
|
||
! cmt = (byte *) malloc((size_t) (cmtlen + 1));
|
||
if (!cmt) gifWarning("couldn't malloc space for comments\n");
|
||
else {
|
||
sp = cmt;
|
||
***************
|
||
*** 262,270 ****
|
||
sbsize = (*ptr1++);
|
||
for (j=0; j<sbsize; j++, sp++, ptr1++) *sp = *ptr1;
|
||
} while (sbsize);
|
||
|
||
if (pinfo->comment) { /* have to strcat onto old comments */
|
||
! cmt1 = (byte *) malloc(strlen(pinfo->comment) + cmtlen);
|
||
if (!cmt1) {
|
||
gifWarning("couldn't malloc space for comments\n");
|
||
free(cmt);
|
||
--- 262,271 ----
|
||
sbsize = (*ptr1++);
|
||
for (j=0; j<sbsize; j++, sp++, ptr1++) *sp = *ptr1;
|
||
} while (sbsize);
|
||
+ *sp = '\0';
|
||
|
||
if (pinfo->comment) { /* have to strcat onto old comments */
|
||
! cmt1 = (byte *) malloc(strlen(pinfo->comment) + cmtlen + 2);
|
||
if (!cmt1) {
|
||
gifWarning("couldn't malloc space for comments\n");
|
||
free(cmt);
|
||
***************
|
||
*** 271,276 ****
|
||
--- 272,278 ----
|
||
}
|
||
else {
|
||
strcpy((char *) cmt1, (char *) pinfo->comment);
|
||
+ strcat((char *) cmt1, (char *) "\n");
|
||
strcat((char *) cmt1, (char *) cmt);
|
||
free(pinfo->comment);
|
||
free(cmt);
|
||
|
||
diff -c -r ../xv-3.10/xvgifwr.c ./xvgifwr.c
|
||
*** ../xv-3.10/xvgifwr.c Thu Dec 22 14:12:16 1994
|
||
--- ./xvgifwr.c Tue Jan 03 16:22:21 1995
|
||
***************
|
||
*** 141,147 ****
|
||
fprintf(stderr,"WrGIF: pic=%lx, w,h=%dx%d, numcols=%d, Bits%d,Cmap=%d\n",
|
||
(u_long) pic8, w,h,numcols,BitsPerPixel,ColorMapSize);
|
||
|
||
! if (comment && strlen(comment)>0)
|
||
fwrite("GIF89a", (size_t) 1, (size_t) 6, fp); /* the GIF magic number */
|
||
else
|
||
fwrite("GIF87a", (size_t) 1, (size_t) 6, fp); /* the GIF magic number */
|
||
--- 141,147 ----
|
||
fprintf(stderr,"WrGIF: pic=%lx, w,h=%dx%d, numcols=%d, Bits%d,Cmap=%d\n",
|
||
(u_long) pic8, w,h,numcols,BitsPerPixel,ColorMapSize);
|
||
|
||
! if (comment && strlen(comment) > (size_t) 0)
|
||
fwrite("GIF89a", (size_t) 1, (size_t) 6, fp); /* the GIF magic number */
|
||
else
|
||
fwrite("GIF87a", (size_t) 1, (size_t) 6, fp); /* the GIF magic number */
|
||
***************
|
||
*** 175,181 ****
|
||
}
|
||
}
|
||
|
||
! if (comment && strlen(comment)>0) { /* write comment blocks */
|
||
char *sp;
|
||
int i, blen;
|
||
|
||
--- 175,181 ----
|
||
}
|
||
}
|
||
|
||
! if (comment && strlen(comment) > (size_t) 0) { /* write comment blocks */
|
||
char *sp;
|
||
int i, blen;
|
||
|
||
diff -c -r ../xv-3.10/xviff.c ./xviff.c
|
||
*** ../xv-3.10/xviff.c Thu Dec 22 14:12:20 1994
|
||
--- ./xviff.c Fri Jan 13 14:54:54 1995
|
||
***************
|
||
*** 463,469 ****
|
||
|
||
if (codeByte < 0x80) {
|
||
codeByte++;
|
||
! if ((slen > codeByte) && (dlen >= codeByte)) {
|
||
slen -= codeByte + 1;
|
||
dlen -= codeByte;
|
||
while (codeByte > 0) {
|
||
--- 463,469 ----
|
||
|
||
if (codeByte < 0x80) {
|
||
codeByte++;
|
||
! if ((slen > (long) codeByte) && (dlen >= (long) codeByte)) {
|
||
slen -= codeByte + 1;
|
||
dlen -= codeByte;
|
||
while (codeByte > 0) {
|
||
***************
|
||
*** 476,482 ****
|
||
|
||
else if (codeByte > 0x80) {
|
||
codeByte = 0x81 - (codeByte & 0x7f);
|
||
! if ((slen > 0) && (dlen >= codeByte)) {
|
||
dataByte = *sptr++;
|
||
slen -= 2;
|
||
dlen -= codeByte;
|
||
--- 476,482 ----
|
||
|
||
else if (codeByte > 0x80) {
|
||
codeByte = 0x81 - (codeByte & 0x7f);
|
||
! if ((slen > (long) 0) && (dlen >= (long) codeByte)) {
|
||
dataByte = *sptr++;
|
||
slen -= 2;
|
||
dlen -= codeByte;
|
||
|
||
diff -c -r ../xv-3.10/xvimage.c ./xvimage.c
|
||
*** ../xv-3.10/xvimage.c Thu Dec 22 14:12:17 1994
|
||
--- ./xvimage.c Fri Jan 13 19:11:36 1995
|
||
***************
|
||
*** 675,680 ****
|
||
--- 675,682 ----
|
||
# define inabsrange(a,n) ( (a) < n && (a) > -n )
|
||
|
||
|
||
+ if (cHIGH<3 || cWIDE<3) return 0;
|
||
+
|
||
ctop = cbot = cleft = cright = 0;
|
||
|
||
if (picType != PIC24) FatalError("doAutoCrop24 called when pic!=PIC24");
|
||
***************
|
||
*** 780,787 ****
|
||
|
||
/* do the actual cropping */
|
||
if (cleft || ctop || cbot || cright) {
|
||
DoCrop(cXOFF+cleft, cYOFF+ctop,
|
||
! cWIDE-(cleft+cright), cHIGH-(ctop+cbot));
|
||
return 1;
|
||
}
|
||
|
||
--- 782,792 ----
|
||
|
||
/* do the actual cropping */
|
||
if (cleft || ctop || cbot || cright) {
|
||
+ if (cWIDE - (cleft + cright) < 1 ||
|
||
+ cHIGH - (ctop + cbot ) < 1) return 0; /* sanity check */
|
||
+
|
||
DoCrop(cXOFF+cleft, cYOFF+ctop,
|
||
! cWIDE-(cleft+cright), cHIGH-(ctop+cbot));
|
||
return 1;
|
||
}
|
||
|
||
***************
|
||
*** 859,865 ****
|
||
eWIDE = (int) (cWIDE * expw);
|
||
eHIGH = (int) (cHIGH * exph);
|
||
|
||
! if (eWIDE > maxWIDE || h > maxHIGH) { /* make 'normal' size */
|
||
if (cWIDE>maxWIDE || cHIGH>maxHIGH) {
|
||
double r,wr,hr;
|
||
wr = ((double) cWIDE) / maxWIDE;
|
||
--- 864,870 ----
|
||
eWIDE = (int) (cWIDE * expw);
|
||
eHIGH = (int) (cHIGH * exph);
|
||
|
||
! if (eWIDE>maxWIDE || eHIGH>maxHIGH) { /* make 'normal' size */
|
||
if (cWIDE>maxWIDE || cHIGH>maxHIGH) {
|
||
double r,wr,hr;
|
||
wr = ((double) cWIDE) / maxWIDE;
|
||
***************
|
||
*** 873,878 ****
|
||
--- 878,886 ----
|
||
}
|
||
|
||
|
||
+ if (eWIDE<1) eWIDE = 1;
|
||
+ if (eHIGH<1) eHIGH = 1;
|
||
+
|
||
SetCursors(-1);
|
||
}
|
||
|
||
***************
|
||
*** 2823,2831 ****
|
||
}
|
||
|
||
if (omode == PAD_ORGB) {
|
||
! rval = (r * fg) / 100 + (p24[0] * bg) / 100;
|
||
! gval = (g * fg) / 100 + (p24[1] * bg) / 100;
|
||
! bval = (b * fg) / 100 + (p24[2] * bg) / 100;
|
||
}
|
||
else { /* one of the HSV modes */
|
||
double fh,fs,fv,fw, bh,bs,bv,bw, h,s,v;
|
||
--- 2831,2839 ----
|
||
}
|
||
|
||
if (omode == PAD_ORGB) {
|
||
! rval = (r * fg) / 100 + ((int) p24[0] * bg) / 100;
|
||
! gval = (g * fg) / 100 + ((int) p24[1] * bg) / 100;
|
||
! bval = (b * fg) / 100 + ((int) p24[2] * bg) / 100;
|
||
}
|
||
else { /* one of the HSV modes */
|
||
double fh,fs,fv,fw, bh,bs,bv,bw, h,s,v;
|
||
|
||
diff -c -r ../xv-3.10/xvjpeg.c ./xvjpeg.c
|
||
*** ../xv-3.10/xvjpeg.c Thu Dec 22 14:12:16 1994
|
||
--- ./xvjpeg.c Thu Jan 05 03:17:13 1995
|
||
***************
|
||
*** 612,620 ****
|
||
}
|
||
|
||
|
||
- jpeg_finish_decompress(&cinfo);
|
||
|
||
-
|
||
/* return 'PICINFO' structure to XV */
|
||
|
||
pinfo->pic = pic;
|
||
--- 612,618 ----
|
||
***************
|
||
*** 646,655 ****
|
||
|
||
pinfo->comment = comment;
|
||
|
||
jpeg_destroy_decompress(&cinfo);
|
||
fclose(fp);
|
||
|
||
! comment = NULL;
|
||
return 1;
|
||
}
|
||
|
||
--- 644,654 ----
|
||
|
||
pinfo->comment = comment;
|
||
|
||
+ jpeg_finish_decompress(&cinfo);
|
||
jpeg_destroy_decompress(&cinfo);
|
||
fclose(fp);
|
||
|
||
! comment = (char *) NULL;
|
||
return 1;
|
||
}
|
||
|
||
***************
|
||
*** 806,812 ****
|
||
If none, add 2. If one, add 1. If two or more, add none. */
|
||
|
||
sp = comment + strlen(comment);
|
||
! for (i=0; i<3 && i<strlen(comment); i++) {
|
||
sp--;
|
||
if (*sp != '\n') break;
|
||
}
|
||
--- 805,811 ----
|
||
If none, add 2. If one, add 1. If two or more, add none. */
|
||
|
||
sp = comment + strlen(comment);
|
||
! for (i=0; i<3 && ((size_t) i < strlen(comment)); i++) {
|
||
sp--;
|
||
if (*sp != '\n') break;
|
||
}
|
||
|
||
diff -c -r ../xv-3.10/xvmisc.c ./xvmisc.c
|
||
*** ../xv-3.10/xvmisc.c Thu Dec 22 14:12:15 1994
|
||
--- ./xvmisc.c Fri Jan 13 18:41:34 1995
|
||
***************
|
||
*** 729,735 ****
|
||
'simple' name ('weenie.gif'). Note that it does not make a copy of
|
||
the name, so don't be modifying it... */
|
||
|
||
! basname = rindex(fname, '/');
|
||
if (!basname) basname = fname;
|
||
else basname++;
|
||
|
||
--- 729,735 ----
|
||
'simple' name ('weenie.gif'). Note that it does not make a copy of
|
||
the name, so don't be modifying it... */
|
||
|
||
! basname = (char *) rindex(fname, '/');
|
||
if (!basname) basname = fname;
|
||
else basname++;
|
||
|
||
***************
|
||
*** 770,802 ****
|
||
XSetForeground(theDisp, theGC, fg);
|
||
XFillRectangle(theDisp,win,theGC, x+3, y+3, (u_int) barwide, (u_int) h-5);
|
||
|
||
! if (barwide < maxwide) {
|
||
! if (numchars) {
|
||
XSetForeground(theDisp, theGC, bg);
|
||
XFillRectangle(theDisp, win, theGC, x+3+barwide, y+3,
|
||
(u_int) (maxwide-barwide), (u_int) (h-5));
|
||
-
|
||
- XSetForeground(theDisp, theGC, fg);
|
||
- XDrawString(theDisp, win, theGC, CENTERX(mfinfo, (x+w/2), str),
|
||
- CENTERY(mfinfo, (y+h/2)), str, numchars);
|
||
}
|
||
- else {
|
||
- XDrawLine(theDisp,win,theGC,x+3+barwide, y+h/2 + 0, x+w-3, y+h/2 + 0);
|
||
-
|
||
- XSetForeground(theDisp, theGC, lo);
|
||
- XDrawLine(theDisp,win,theGC,x+3+barwide, y+h/2 + 1, x+w-3, y+h/2 + 1);
|
||
|
||
! XSetForeground(theDisp, theGC, hi);
|
||
! XDrawLine(theDisp,win,theGC,x+3+barwide, y+h/2 + 2, x+w-3, y+h/2 + 2);
|
||
!
|
||
! XSetForeground(theDisp, theGC, bg);
|
||
! XFillRectangle(theDisp, win, theGC, x+3+barwide, y+3,
|
||
! (u_int) (maxwide-barwide), (u_int) (h/2 - 3));
|
||
!
|
||
! XFillRectangle(theDisp, win, theGC, x+3+barwide, y+h/2 + 3,
|
||
! (u_int) (maxwide-barwide),(u_int)((h-3) - (h/2+3)) + 1);
|
||
! }
|
||
}
|
||
}
|
||
|
||
else {
|
||
--- 770,808 ----
|
||
XSetForeground(theDisp, theGC, fg);
|
||
XFillRectangle(theDisp,win,theGC, x+3, y+3, (u_int) barwide, (u_int) h-5);
|
||
|
||
! if (numchars) { /* do string */
|
||
! if (barwide < maxwide) {
|
||
XSetForeground(theDisp, theGC, bg);
|
||
XFillRectangle(theDisp, win, theGC, x+3+barwide, y+3,
|
||
(u_int) (maxwide-barwide), (u_int) (h-5));
|
||
}
|
||
|
||
! XSetFunction(theDisp, theGC, GXinvert);
|
||
! XSetPlaneMask(theDisp, theGC, fg ^ bg);
|
||
!
|
||
! XDrawString(theDisp, win, theGC, CENTERX(mfinfo, (x+w/2), str),
|
||
! CENTERY(mfinfo, (y+h/2)), str, numchars);
|
||
!
|
||
! XSetFunction(theDisp, theGC, GXcopy);
|
||
! XSetPlaneMask(theDisp, theGC, AllPlanes);
|
||
}
|
||
+
|
||
+ else if (barwide < maxwide) {
|
||
+ XDrawLine(theDisp,win,theGC,x+3+barwide, y+h/2 + 0, x+w-3, y+h/2 + 0);
|
||
+
|
||
+ XSetForeground(theDisp, theGC, lo);
|
||
+ XDrawLine(theDisp,win,theGC,x+3+barwide, y+h/2 + 1, x+w-3, y+h/2 + 1);
|
||
+
|
||
+ XSetForeground(theDisp, theGC, hi);
|
||
+ XDrawLine(theDisp,win,theGC,x+3+barwide, y+h/2 + 2, x+w-3, y+h/2 + 2);
|
||
+
|
||
+ XSetForeground(theDisp, theGC, bg);
|
||
+ XFillRectangle(theDisp, win, theGC, x+3+barwide, y+3,
|
||
+ (u_int) (maxwide-barwide), (u_int) (h/2 - 3));
|
||
+
|
||
+ XFillRectangle(theDisp, win, theGC, x+3+barwide, y+h/2 + 3,
|
||
+ (u_int) (maxwide-barwide),(u_int)((h-3) - (h/2+3)) + 1);
|
||
+ }
|
||
}
|
||
|
||
else {
|
||
***************
|
||
*** 806,832 ****
|
||
XSetForeground(theDisp, theGC, fg);
|
||
XFillRectangle(theDisp,win,theGC, x+1, y+1, (u_int) barwide, (u_int) h-1);
|
||
|
||
! if (barwide < maxwide) {
|
||
! if (numchars) {
|
||
XSetForeground(theDisp, theGC, bg);
|
||
XFillRectangle(theDisp, win, theGC, x+1+barwide, y+1,
|
||
(u_int) (maxwide-barwide), (u_int) (h-1));
|
||
-
|
||
- XSetForeground(theDisp, theGC, fg);
|
||
- XDrawString(theDisp, win, theGC, CENTERX(mfinfo, (x+w/2), str),
|
||
- CENTERY(mfinfo, (y+h/2)), str, numchars);
|
||
}
|
||
! else {
|
||
! XDrawLine(theDisp, win, theGC, x+1+barwide, y+h/2, x+w-1, y+h/2);
|
||
!
|
||
! XSetForeground(theDisp, theGC, bg);
|
||
! XFillRectangle(theDisp, win, theGC, x+1+barwide, y+1,
|
||
! (u_int) (maxwide-barwide), (u_int) (h/2 - 1));
|
||
!
|
||
! XFillRectangle(theDisp, win, theGC, x+1+barwide, y+h/2 + 1,
|
||
! (u_int)(maxwide-barwide),(u_int)(((h-1) - (h/2+1))+1));
|
||
! }
|
||
}
|
||
}
|
||
|
||
XFlush(theDisp);
|
||
--- 812,844 ----
|
||
XSetForeground(theDisp, theGC, fg);
|
||
XFillRectangle(theDisp,win,theGC, x+1, y+1, (u_int) barwide, (u_int) h-1);
|
||
|
||
! if (numchars) {
|
||
! if (barwide < maxwide) {
|
||
XSetForeground(theDisp, theGC, bg);
|
||
XFillRectangle(theDisp, win, theGC, x+1+barwide, y+1,
|
||
(u_int) (maxwide-barwide), (u_int) (h-1));
|
||
}
|
||
!
|
||
! XSetFunction(theDisp, theGC, GXinvert);
|
||
! XSetPlaneMask(theDisp, theGC, fg ^ bg);
|
||
!
|
||
! XDrawString(theDisp, win, theGC, CENTERX(mfinfo, (x+w/2), str),
|
||
! CENTERY(mfinfo, (y+h/2)), str, numchars);
|
||
!
|
||
! XSetFunction(theDisp, theGC, GXcopy);
|
||
! XSetPlaneMask(theDisp, theGC, AllPlanes);
|
||
}
|
||
+
|
||
+ else if (barwide < maxwide) {
|
||
+ XDrawLine(theDisp, win, theGC, x+1+barwide, y+h/2, x+w-1, y+h/2);
|
||
+
|
||
+ XSetForeground(theDisp, theGC, bg);
|
||
+ XFillRectangle(theDisp, win, theGC, x+1+barwide, y+1,
|
||
+ (u_int) (maxwide-barwide), (u_int) (h/2 - 1));
|
||
+
|
||
+ XFillRectangle(theDisp, win, theGC, x+1+barwide, y+h/2 + 1,
|
||
+ (u_int)(maxwide-barwide),(u_int)(((h-1) - (h/2+1))+1));
|
||
+ }
|
||
}
|
||
|
||
XFlush(theDisp);
|
||
***************
|
||
*** 1117,1124 ****
|
||
|
||
time.tv_sec = usec / 1000000L;
|
||
time.tv_usec = usec % 1000000L;
|
||
! select(0, (fd_set *) NULL, (fd_set *) NULL, (fd_set *) NULL, &time);
|
||
}
|
||
#endif /* VMS */
|
||
}
|
||
|
||
--- 1129,1137 ----
|
||
|
||
time.tv_sec = usec / 1000000L;
|
||
time.tv_usec = usec % 1000000L;
|
||
! select(0, XV_FDTYPE NULL, XV_FDTYPE NULL, XV_FDTYPE NULL, &time);
|
||
}
|
||
#endif /* VMS */
|
||
}
|
||
+
|
||
|
||
diff -c -r ../xv-3.10/xvpbm.c ./xvpbm.c
|
||
*** ../xv-3.10/xvpbm.c Thu Dec 22 14:12:16 1994
|
||
--- ./xvpbm.c Tue Jan 03 16:23:44 1995
|
||
***************
|
||
*** 353,359 ****
|
||
*sp++ = '\n';
|
||
*sp = '\0';
|
||
|
||
! if (strlen(cmt) > 0) { /* add to pinfo->comment */
|
||
if (!pinfo->comment) {
|
||
pinfo->comment = (char *) malloc(strlen(cmt)+1);
|
||
if (!pinfo->comment) FatalError("malloc failure in xvpbm.c getint");
|
||
--- 353,359 ----
|
||
*sp++ = '\n';
|
||
*sp = '\0';
|
||
|
||
! if (strlen(cmt) > (size_t) 0) { /* add to pinfo->comment */
|
||
if (!pinfo->comment) {
|
||
pinfo->comment = (char *) malloc(strlen(cmt)+1);
|
||
if (!pinfo->comment) FatalError("malloc failure in xvpbm.c getint");
|
||
***************
|
||
*** 438,444 ****
|
||
*sp++ = '\n';
|
||
*sp = '\0';
|
||
|
||
! if (strlen(cmt) > 0) { /* add to pinfo->comment */
|
||
if (!pinfo->comment) {
|
||
pinfo->comment = (char *) malloc(strlen(cmt)+1);
|
||
if (!pinfo->comment) FatalError("malloc failure in xvpbm.c getint");
|
||
--- 438,444 ----
|
||
*sp++ = '\n';
|
||
*sp = '\0';
|
||
|
||
! if (strlen(cmt) > (size_t) 0) { /* add to pinfo->comment */
|
||
if (!pinfo->comment) {
|
||
pinfo->comment = (char *) malloc(strlen(cmt)+1);
|
||
if (!pinfo->comment) FatalError("malloc failure in xvpbm.c getint");
|
||
|
||
diff -c -r ../xv-3.10/xvpcx.c ./xvpcx.c
|
||
*** ../xv-3.10/xvpcx.c Thu Dec 22 14:12:20 1994
|
||
--- ./xvpcx.c Tue Jan 10 18:06:37 1995
|
||
***************
|
||
*** 36,44 ****
|
||
#define PCX_MAPSTART 0x0c /* Start of appended colormap */
|
||
|
||
|
||
! static int pcxLoadImage PARM((char *, FILE *, byte *, byte *, int, int));
|
||
! static void pcxLoadRaster PARM((FILE *, byte *, int, byte *, int, int));
|
||
! static int pcxError PARM((char *, char *));
|
||
|
||
|
||
|
||
--- 36,45 ----
|
||
#define PCX_MAPSTART 0x0c /* Start of appended colormap */
|
||
|
||
|
||
! static int pcxLoadImage8 PARM((char *, FILE *, PICINFO *, byte *));
|
||
! static int pcxLoadImage24 PARM((char *, FILE *, PICINFO *, byte *));
|
||
! static void pcxLoadRaster PARM((FILE *, byte *, int, byte *, int, int));
|
||
! static int pcxError PARM((char *, char *));
|
||
|
||
|
||
|
||
***************
|
||
*** 52,58 ****
|
||
long filesize;
|
||
char *bname, *errstr;
|
||
byte hdr[128], *image;
|
||
! int i, colors, gray;
|
||
|
||
pinfo->type = PIC8;
|
||
pinfo->pic = (byte *) NULL;
|
||
--- 53,59 ----
|
||
long filesize;
|
||
char *bname, *errstr;
|
||
byte hdr[128], *image;
|
||
! int i, colors, gray, fullcolor;
|
||
|
||
pinfo->type = PIC8;
|
||
pinfo->pic = (byte *) NULL;
|
||
***************
|
||
*** 92,97 ****
|
||
--- 93,99 ----
|
||
pinfo->w++; pinfo->h++;
|
||
|
||
colors = 1 << (hdr[PCX_BPP] * hdr[PCX_PLANES]);
|
||
+ fullcolor = (hdr[PCX_BPP] == 8 && hdr[PCX_PLANES] == 3);
|
||
|
||
if (DEBUG) {
|
||
fprintf(stderr,"PCX: %dx%d image, version=%d, encoding=%d\n",
|
||
***************
|
||
*** 102,108 ****
|
||
colors);
|
||
}
|
||
|
||
! if (colors>256) {
|
||
fclose(fp);
|
||
return pcxError(bname,"No more than 256 colors allowed in PCX file.");
|
||
}
|
||
--- 104,110 ----
|
||
colors);
|
||
}
|
||
|
||
! if (colors>256 && !fullcolor) {
|
||
fclose(fp);
|
||
return pcxError(bname,"No more than 256 colors allowed in PCX file.");
|
||
}
|
||
***************
|
||
*** 112,134 ****
|
||
return pcxError(bname,"Unsupported PCX encoding format.");
|
||
}
|
||
|
||
! /* note: overallocation to make life easier... */
|
||
! image = (byte *) malloc((size_t) (pinfo->h + 1) * pinfo->w + 16);
|
||
! if (!image) FatalError("Can't alloc 'image' in LoadPCX()");
|
||
!
|
||
! xvbzero((char *) image, (size_t) ((pinfo->h+1) * pinfo->w + 16));
|
||
!
|
||
! if (!pcxLoadImage(bname, fp, image, hdr, pinfo->w, pinfo->h)) {
|
||
! free(image);
|
||
! fclose(fp);
|
||
! return 0;
|
||
}
|
||
|
||
|
||
if (ferror(fp) | feof(fp)) /* just a warning */
|
||
pcxError(bname, "PCX file appears to be truncated.");
|
||
|
||
! if (colors>16) { /* handle trailing colormap */
|
||
while (1) {
|
||
i=getc(fp);
|
||
if (i==PCX_MAPSTART || i==EOF) break;
|
||
--- 114,138 ----
|
||
return pcxError(bname,"Unsupported PCX encoding format.");
|
||
}
|
||
|
||
! /* load the image, the image function fills in pinfo->pic */
|
||
! if (!fullcolor) {
|
||
! if (!pcxLoadImage8(bname, fp, pinfo, hdr)) {
|
||
! fclose(fp);
|
||
! return 0;
|
||
! }
|
||
}
|
||
+ else {
|
||
+ if (!pcxLoadImage24(bname, fp, pinfo, hdr)) {
|
||
+ fclose(fp);
|
||
+ return 0;
|
||
+ }
|
||
+ }
|
||
|
||
|
||
if (ferror(fp) | feof(fp)) /* just a warning */
|
||
pcxError(bname, "PCX file appears to be truncated.");
|
||
|
||
! if (colors>16 && !fullcolor) { /* handle trailing colormap */
|
||
while (1) {
|
||
i=getc(fp);
|
||
if (i==PCX_MAPSTART || i==EOF) break;
|
||
***************
|
||
*** 171,185 ****
|
||
/* finally, convert into XV internal format */
|
||
|
||
|
||
! pinfo->pic = image;
|
||
! pinfo->type = PIC8;
|
||
pinfo->frmType = -1; /* no default format to save in */
|
||
|
||
/* check for grayscaleitude */
|
||
! for (i=0; i<colors; i++) {
|
||
! if ((pinfo->r[i] != pinfo->g[i]) || (pinfo->r[i] != pinfo->b[i])) break;
|
||
}
|
||
- gray = (i==colors) ? 1 : 0;
|
||
|
||
|
||
if (colors > 2 || (colors==2 && !gray)) { /* grayscale or PseudoColor */
|
||
--- 175,191 ----
|
||
/* finally, convert into XV internal format */
|
||
|
||
|
||
! pinfo->type = fullcolor ? PIC24 : PIC8;
|
||
pinfo->frmType = -1; /* no default format to save in */
|
||
|
||
/* check for grayscaleitude */
|
||
! gray = 0;
|
||
! if (!fullcolor) {
|
||
! for (i=0; i<colors; i++) {
|
||
! if ((pinfo->r[i] != pinfo->g[i]) || (pinfo->r[i] != pinfo->b[i])) break;
|
||
! }
|
||
! gray = (i==colors) ? 1 : 0;
|
||
}
|
||
|
||
|
||
if (colors > 2 || (colors==2 && !gray)) { /* grayscale or PseudoColor */
|
||
***************
|
||
*** 205,227 ****
|
||
|
||
|
||
/*****************************/
|
||
! static int pcxLoadImage(fname, fp, image, hdr, w, h)
|
||
! char *fname;
|
||
! FILE *fp;
|
||
! byte *image, *hdr;
|
||
! int w, h;
|
||
{
|
||
switch (hdr[PCX_BPP]) {
|
||
! case 1: pcxLoadRaster(fp, image, 1, hdr, w, h); break;
|
||
! case 8: pcxLoadRaster(fp, image, 8, hdr, w, h); break;
|
||
default:
|
||
pcxError(fname, "Unsupported # of bits per plane.");
|
||
return (0);
|
||
}
|
||
|
||
return 1;
|
||
}
|
||
|
||
|
||
|
||
|
||
--- 211,317 ----
|
||
|
||
|
||
/*****************************/
|
||
! static int pcxLoadImage8(fname, fp, pinfo, hdr)
|
||
! char *fname;
|
||
! FILE *fp;
|
||
! PICINFO *pinfo;
|
||
! byte *hdr;
|
||
{
|
||
+ /* load an image with at most 8 bits per pixel */
|
||
+
|
||
+ byte *image;
|
||
+
|
||
+ /* note: overallocation to make life easier... */
|
||
+ image = (byte *) malloc((size_t) (pinfo->h + 1) * pinfo->w + 16);
|
||
+ if (!image) FatalError("Can't alloc 'image' in pcxLoadImage8()");
|
||
+
|
||
+ xvbzero((char *) image, (size_t) ((pinfo->h+1) * pinfo->w + 16));
|
||
+
|
||
switch (hdr[PCX_BPP]) {
|
||
! case 1: pcxLoadRaster(fp, image, 1, hdr, pinfo->w, pinfo->h); break;
|
||
! case 8: pcxLoadRaster(fp, image, 8, hdr, pinfo->w, pinfo->h); break;
|
||
default:
|
||
pcxError(fname, "Unsupported # of bits per plane.");
|
||
+ free(image);
|
||
return (0);
|
||
}
|
||
|
||
+ pinfo->pic = image;
|
||
return 1;
|
||
}
|
||
|
||
+
|
||
+ /*****************************/
|
||
+ static int pcxLoadImage24(fname, fp, pinfo, hdr)
|
||
+ char *fname;
|
||
+ FILE *fp;
|
||
+ PICINFO *pinfo;
|
||
+ byte *hdr;
|
||
+ {
|
||
+ byte *pix, *pic24, scale[256];
|
||
+ int c, i, j, w, h, maxv, cnt, planes, bperlin, nbytes;
|
||
+
|
||
+ w = pinfo->w; h = pinfo->h;
|
||
+
|
||
+ planes = (int) hdr[PCX_PLANES];
|
||
+ bperlin = hdr[PCX_BPRL] + ((int) hdr[PCX_BPRH]<<8);
|
||
+
|
||
+ /* allocate 24-bit image */
|
||
+ pic24 = (byte *) malloc((size_t) w*h*planes);
|
||
+ if (!pic24) FatalError("couldn't malloc 'pic24'");
|
||
+
|
||
+ xvbzero((char *) pic24, (size_t) w*h*planes);
|
||
+
|
||
+ maxv = 0;
|
||
+ pix = pinfo->pic = pic24;
|
||
+ i = 0; /* planes, in this while loop */
|
||
+ j = 0; /* bytes per line, in this while loop */
|
||
+ nbytes = bperlin*h*planes;
|
||
+
|
||
+ while (nbytes > 0 && (c = getc(fp)) != EOF) {
|
||
+ if ((c & 0xC0) == 0xC0) { /* have a rep. count */
|
||
+ cnt = c & 0x3F;
|
||
+ c = getc(fp);
|
||
+ if (c == EOF) { getc(fp); break; }
|
||
+ }
|
||
+ else cnt = 1;
|
||
+
|
||
+ if (c > maxv) maxv = c;
|
||
+
|
||
+ while (cnt-- > 0) {
|
||
+ if (j < w) {
|
||
+ *pix = c;
|
||
+ pix += planes;
|
||
+ }
|
||
+ j++;
|
||
+ nbytes--;
|
||
+ if (j == bperlin) {
|
||
+ j = 0;
|
||
+ if (++i < planes) {
|
||
+ pix -= (w*planes)-1; /* next plane on this line */
|
||
+ }
|
||
+ else {
|
||
+ pix -= (planes-1); /* start of next line, first plane */
|
||
+ i = 0;
|
||
+ }
|
||
+ }
|
||
+ }
|
||
+ }
|
||
+
|
||
+
|
||
+ /* scale all RGB to range 0-255, if they aren't */
|
||
+
|
||
+ if (maxv<255) {
|
||
+ for (i=0; i<=maxv; i++) scale[i] = (i * 255) / maxv;
|
||
+
|
||
+ for (i=0, pix=pic24; i<h; i++) {
|
||
+ if ((i&0x3f)==0) WaitCursor();
|
||
+ for (j=0; j<w*planes; j++, pix++) *pix = scale[*pix];
|
||
+ }
|
||
+ }
|
||
+
|
||
+ return 1;
|
||
+ }
|
||
|
||
|
||
|
||
diff -c -r ../xv-3.10/xvpds.c ./xvpds.c
|
||
*** ../xv-3.10/xvpds.c Thu Dec 22 14:12:17 1994
|
||
--- ./xvpds.c Tue Jan 03 16:25:52 1995
|
||
***************
|
||
*** 513,519 ****
|
||
} else if ((sscanf(scanbuff," EXPOSURE_DURATION = %s", exposure) == 1)
|
||
|| (sscanf(scanbuff," INSTRUMENT_EXPOSURE_DURATION = %s",
|
||
exposure) == 1)) {
|
||
! tmptmp = index(scanbuff,'=');
|
||
tmptmp++;
|
||
while((*tmptmp) == ' ')
|
||
tmptmp++;
|
||
--- 513,519 ----
|
||
} else if ((sscanf(scanbuff," EXPOSURE_DURATION = %s", exposure) == 1)
|
||
|| (sscanf(scanbuff," INSTRUMENT_EXPOSURE_DURATION = %s",
|
||
exposure) == 1)) {
|
||
! tmptmp = (char *) index(scanbuff,'=');
|
||
tmptmp++;
|
||
while((*tmptmp) == ' ')
|
||
tmptmp++;
|
||
***************
|
||
*** 521,527 ****
|
||
lastwasinote=FALSE; continue;
|
||
|
||
} else if (sscanf(scanbuff, "NOTE = %s", inote) == 1) {
|
||
! tmptmp = index(scanbuff,'='); tmptmp++;
|
||
while (((*tmptmp) == ' ') || ((*tmptmp) == '"')) tmptmp++;
|
||
strcpy(inote,tmptmp);
|
||
strcat(inote," ");
|
||
--- 521,527 ----
|
||
lastwasinote=FALSE; continue;
|
||
|
||
} else if (sscanf(scanbuff, "NOTE = %s", inote) == 1) {
|
||
! tmptmp = (char *) index(scanbuff,'='); tmptmp++;
|
||
while (((*tmptmp) == ' ') || ((*tmptmp) == '"')) tmptmp++;
|
||
strcpy(inote,tmptmp);
|
||
strcat(inote," ");
|
||
***************
|
||
*** 884,892 ****
|
||
|
||
/* check whether histogram file exists */
|
||
#ifdef VMS
|
||
! c = rindex(strcpy(name, (c = rindex(fname, ':')) ? c+1 : fname), ']');
|
||
#else
|
||
! c = rindex(strcpy(name, fname), '/');
|
||
#endif /* VMS */
|
||
(void)strcpy(c ? c+1 : name, "hist.tab");
|
||
|
||
--- 884,894 ----
|
||
|
||
/* check whether histogram file exists */
|
||
#ifdef VMS
|
||
! c = (char *) rindex(strcpy(name,
|
||
! (c = (char *) rindex(fname, ':')) ? c+1 : fname),
|
||
! ']');
|
||
#else
|
||
! c = (char *) rindex(strcpy(name, fname), '/');
|
||
#endif /* VMS */
|
||
(void)strcpy(c ? c+1 : name, "hist.tab");
|
||
|
||
***************
|
||
*** 979,987 ****
|
||
int i, n, r, g, b;
|
||
|
||
#ifdef VMS
|
||
! c = rindex(strcpy(name, (c = rindex(fname, ':')) ? c+1 : fname), ']');
|
||
#else
|
||
! c = rindex(strcpy(name, fname), '/');
|
||
#endif /* VMS */
|
||
(void)strcpy(c ? c+1 : name, "palette.tab");
|
||
|
||
--- 981,991 ----
|
||
int i, n, r, g, b;
|
||
|
||
#ifdef VMS
|
||
! c = (char *) rindex(strcpy(name,
|
||
! (c = (char *) rindex(fname, ':')) ? c+1 : fname),
|
||
! ']');
|
||
#else
|
||
! c = (char *) rindex(strcpy(name, fname), '/');
|
||
#endif /* VMS */
|
||
(void)strcpy(c ? c+1 : name, "palette.tab");
|
||
|
||
diff -c -r ../xv-3.10/xvpictoppm.c ./xvpictoppm.c
|
||
*** ../xv-3.10/xvpictoppm.c Thu Dec 22 14:12:24 1994
|
||
--- ./xvpictoppm.c Fri Jan 13 14:57:14 1995
|
||
***************
|
||
*** 124,132 ****
|
||
|
||
/* convert icon from 332 to 24-bit image */
|
||
for (i=0, ip=icon8, pp=pic24; i<w*h; i++, ip++, pp+=3) {
|
||
! pp[0] = (((*ip >> 5) & 0x07) * 255) / 7;
|
||
! pp[1] = (((*ip >> 2) & 0x07) * 255) / 7;
|
||
! pp[2] = (((*ip >> 0) & 0x03) * 255) / 3;
|
||
}
|
||
|
||
free(icon8);
|
||
--- 124,132 ----
|
||
|
||
/* convert icon from 332 to 24-bit image */
|
||
for (i=0, ip=icon8, pp=pic24; i<w*h; i++, ip++, pp+=3) {
|
||
! pp[0] = ( ((int) ((*ip >> 5) & 0x07)) * 255) / 7;
|
||
! pp[1] = ( ((int) ((*ip >> 2) & 0x07)) * 255) / 7;
|
||
! pp[2] = ( ((int) ((*ip >> 0) & 0x03)) * 255) / 3;
|
||
}
|
||
|
||
free(icon8);
|
||
|
||
diff -c -r ../xv-3.10/xvpopup.c ./xvpopup.c
|
||
*** ../xv-3.10/xvpopup.c Thu Dec 22 14:12:16 1994
|
||
--- ./xvpopup.c Thu Jan 19 13:09:31 1995
|
||
***************
|
||
*** 150,161 ****
|
||
if (wy + h > dispHIGH) wy = dispHIGH - h;
|
||
}
|
||
|
||
! /* wx -= (p_offx + ch_offx);
|
||
! wy -= (p_offy + ch_offy); */
|
||
|
||
- wx -= (ch_offx);
|
||
- wy -= (ch_offy);
|
||
-
|
||
if (!XGetNormalHints(theDisp, win, &hints)) hints.flags = 0;
|
||
hints.width = hints.min_width = hints.max_width = w;
|
||
hints.height = hints.min_height = hints.max_height = h;
|
||
--- 150,165 ----
|
||
if (wy + h > dispHIGH) wy = dispHIGH - h;
|
||
}
|
||
|
||
!
|
||
! if (winCtrPosKludge) {
|
||
! wx -= (p_offx + ch_offx);
|
||
! wy -= (p_offy + ch_offy);
|
||
! }
|
||
! else {
|
||
! wx -= (ch_offx);
|
||
! wy -= (ch_offy);
|
||
! }
|
||
|
||
if (!XGetNormalHints(theDisp, win, &hints)) hints.flags = 0;
|
||
hints.width = hints.min_width = hints.max_width = w;
|
||
hints.height = hints.min_height = hints.max_height = h;
|
||
***************
|
||
*** 249,255 ****
|
||
|
||
if (poptyp == ISGRAB) {
|
||
BTSetActive(&bts[0], (int) strlen(gsBuf));
|
||
! BTSetActive(&bts[1], (strlen(gsBuf)>0 && atoi(gsBuf)>0));
|
||
}
|
||
else if (poptyp == ISPAD) {
|
||
BTSetActive(&bts[0], (int) strlen(gsBuf));
|
||
--- 253,259 ----
|
||
|
||
if (poptyp == ISGRAB) {
|
||
BTSetActive(&bts[0], (int) strlen(gsBuf));
|
||
! BTSetActive(&bts[1], (strlen(gsBuf)>(size_t)0 && atoi(gsBuf)>(size_t)0));
|
||
}
|
||
else if (poptyp == ISPAD) {
|
||
BTSetActive(&bts[0], (int) strlen(gsBuf));
|
||
***************
|
||
*** 350,356 ****
|
||
gsx = 10 + icon_width + 20;
|
||
gsy = 10+(PUHIGH-30-BUTTH-gsh)/2;
|
||
|
||
! if (strlen(txt) > 60)
|
||
gsy = PUHIGH - 10 - BUTTH - 10 - gsh - 20;
|
||
|
||
gsw = PUWIDE - gsx - 10;
|
||
--- 354,360 ----
|
||
gsx = 10 + icon_width + 20;
|
||
gsy = 10+(PUHIGH-30-BUTTH-gsh)/2;
|
||
|
||
! if (strlen(txt) > (size_t) 60)
|
||
gsy = PUHIGH - 10 - BUTTH - 10 - gsh - 20;
|
||
|
||
gsw = PUWIDE - gsx - 10;
|
||
***************
|
||
*** 558,564 ****
|
||
strncpy(nams[*lenp], vals[*lenp], (size_t) 31);
|
||
}
|
||
|
||
! if (strlen(nams[*lenp]) > 20) { /* fix long names */
|
||
char *sp = nams[*lenp] + 18;
|
||
*sp++ = '.'; *sp++ = '.'; *sp++ = '.'; *sp++ = '\0';
|
||
}
|
||
--- 562,568 ----
|
||
strncpy(nams[*lenp], vals[*lenp], (size_t) 31);
|
||
}
|
||
|
||
! if (strlen(nams[*lenp]) > (size_t) 20) { /* fix long names */
|
||
char *sp = nams[*lenp] + 18;
|
||
*sp++ = '.'; *sp++ = '.'; *sp++ = '.'; *sp++ = '\0';
|
||
}
|
||
***************
|
||
*** 1154,1166 ****
|
||
/* if we have a string of any sort, turn on the default '\n' button
|
||
(if there is one) */
|
||
for (i=0; i<nbts && accel[i]!='\n'; i++);
|
||
! if (i<nbts) BTSetActive(&bts[i], strlen(gsBuf)>0);
|
||
}
|
||
else if (popUp == ISGRAB) {
|
||
/* need a string of length 1 to enable Grab (bts[0]), and a string
|
||
with an atoi() of at least '1' to enable AutoGrab (bts[1]) */
|
||
! BTSetActive(&bts[0], strlen(gsBuf)>0);
|
||
! BTSetActive(&bts[1], (strlen(gsBuf)>0 && atoi(gsBuf)>0));
|
||
}
|
||
|
||
return(0);
|
||
--- 1158,1170 ----
|
||
/* if we have a string of any sort, turn on the default '\n' button
|
||
(if there is one) */
|
||
for (i=0; i<nbts && accel[i]!='\n'; i++);
|
||
! if (i<nbts) BTSetActive(&bts[i], (strlen(gsBuf) > (size_t) 0));
|
||
}
|
||
else if (popUp == ISGRAB) {
|
||
/* need a string of length 1 to enable Grab (bts[0]), and a string
|
||
with an atoi() of at least '1' to enable AutoGrab (bts[1]) */
|
||
! BTSetActive(&bts[0], (strlen(gsBuf) > (size_t) 0));
|
||
! BTSetActive(&bts[1], (strlen(gsBuf)>(size_t)0 && atoi(gsBuf)>(size_t)0));
|
||
}
|
||
|
||
return(0);
|
||
***************
|
||
*** 1219,1225 ****
|
||
XDrawLine(theDisp, popW, theGC, gsx+3, gsy+1, gsx+3, gsy + gsh-1);
|
||
}
|
||
|
||
! if (gsEnPos<strlen(gsBuf)) { /* draw a "there's more over here" doowah */
|
||
XDrawLine(theDisp, popW, theGC, gsx+gsw-3, gsy+1, gsx+gsw-3, gsy+gsh-1);
|
||
XDrawLine(theDisp, popW, theGC, gsx+gsw-2, gsy+1, gsx+gsw-2, gsy+gsh-1);
|
||
XDrawLine(theDisp, popW, theGC, gsx+gsw-1, gsy+1, gsx+gsw-1, gsy+gsh-1);
|
||
--- 1223,1230 ----
|
||
XDrawLine(theDisp, popW, theGC, gsx+3, gsy+1, gsx+3, gsy + gsh-1);
|
||
}
|
||
|
||
! if ((size_t) gsEnPos < strlen(gsBuf)) {
|
||
! /* draw a "there's more over here" doowah */
|
||
XDrawLine(theDisp, popW, theGC, gsx+gsw-3, gsy+1, gsx+gsw-3, gsy+gsh-1);
|
||
XDrawLine(theDisp, popW, theGC, gsx+gsw-2, gsy+1, gsx+gsw-2, gsy+gsh-1);
|
||
XDrawLine(theDisp, popW, theGC, gsx+gsw-1, gsy+1, gsx+gsw-1, gsy+gsh-1);
|
||
|
||
diff -c -r ../xv-3.10/xvrle.c ./xvrle.c
|
||
*** ../xv-3.10/xvrle.c Thu Dec 22 14:12:22 1994
|
||
--- ./xvrle.c Thu Jan 19 12:27:47 1995
|
||
***************
|
||
*** 257,263 ****
|
||
|
||
if (ncolors == 1) { /* grayscale or PseudoColor */
|
||
pinfo->type = PIC8;
|
||
! if (ncmap == 1) {
|
||
pinfo->colType = F_GREYSCALE;
|
||
sprintf(pinfo->fullInfo, "Greyscale RLE. (%ld bytes)", filesize);
|
||
for (i=0; i<256; i++)
|
||
--- 257,263 ----
|
||
|
||
if (ncolors == 1) { /* grayscale or PseudoColor */
|
||
pinfo->type = PIC8;
|
||
! if (ncmap == 0 || ncmap == 1) { /* grey, or grey with gamma curve */
|
||
pinfo->colType = F_GREYSCALE;
|
||
sprintf(pinfo->fullInfo, "Greyscale RLE. (%ld bytes)", filesize);
|
||
for (i=0; i<256; i++)
|
||
|
||
diff -c -r ../xv-3.10/xvtext.c ./xvtext.c
|
||
*** ../xv-3.10/xvtext.c Thu Dec 22 14:12:20 1994
|
||
--- ./xvtext.c Fri Jan 13 18:46:28 1995
|
||
***************
|
||
*** 1220,1226 ****
|
||
LC("the xv distribution. Do *not* send mail unless absolutely necessary");
|
||
LC("(ie, you don't have ftp capability).");
|
||
LC("");
|
||
! LC("Note: The documentation ('xvdocs.ps') may be installed in '/usr/local'.");
|
||
LC("");
|
||
LC("If you're viewing this information via the 'About XV' command, and");
|
||
LC("you'd like to print it out, a copy of this info can be found in the ");
|
||
--- 1220,1226 ----
|
||
LC("the xv distribution. Do *not* send mail unless absolutely necessary");
|
||
LC("(ie, you don't have ftp capability).");
|
||
LC("");
|
||
! LC("Note: The docs (xvdocs.ps) may be installed in '/usr/local/lib'.");
|
||
LC("");
|
||
LC("If you're viewing this information via the 'About XV' command, and");
|
||
LC("you'd like to print it out, a copy of this info can be found in the ");
|
||
|
||
diff -c -r ../xv-3.10/xvtiff.c ./xvtiff.c
|
||
*** ../xv-3.10/xvtiff.c Thu Dec 22 14:12:20 1994
|
||
--- ./xvtiff.c Fri Jan 13 14:53:34 1995
|
||
***************
|
||
*** 120,126 ****
|
||
desc = (char *) NULL;
|
||
|
||
TIFFGetField(tif, TIFFTAG_IMAGEDESCRIPTION, &desc);
|
||
! if (desc && strlen(desc)>0) {
|
||
/* kludge: tiff library seems to return bizarre comments */
|
||
if (strlen(desc)==4 && strcmp(desc, "\367\377\353\370")==0) {}
|
||
else {
|
||
--- 120,126 ----
|
||
desc = (char *) NULL;
|
||
|
||
TIFFGetField(tif, TIFFTAG_IMAGEDESCRIPTION, &desc);
|
||
! if (desc && strlen(desc) > (size_t) 0) {
|
||
/* kludge: tiff library seems to return bizarre comments */
|
||
if (strlen(desc)==4 && strcmp(desc, "\367\377\353\370")==0) {}
|
||
else {
|
||
***************
|
||
*** 1381,1388 ****
|
||
}
|
||
}
|
||
|
||
! /* #define Code2V(c, RB, RW, CR) ((((c)-(int)RB)*(float)CR)/(float)(RW-RB)) */
|
||
! #define Code2V(c, RB, RW, CR) ((((c)-RB)*(float)CR)/(float)(RW-RB))
|
||
|
||
#define CLAMP(f,min,max) \
|
||
(int)((f)+.5 < (min) ? (min) : (f)+.5 > (max) ? (max) : (f)+.5)
|
||
--- 1381,1387 ----
|
||
}
|
||
}
|
||
|
||
! #define Code2V(c, RB, RW, CR) ((((c)-(int)RB)*(float)CR)/(float)(RW-RB))
|
||
|
||
#define CLAMP(f,min,max) \
|
||
(int)((f)+.5 < (min) ? (min) : (f)+.5 > (max) ? (max) : (f)+.5)
|
||
|
||
diff -c -r ../xv-3.10/xvtiffwr.c ./xvtiffwr.c
|
||
*** ../xv-3.10/xvtiffwr.c Thu Dec 22 14:12:20 1994
|
||
--- ./xvtiffwr.c Tue Jan 03 16:28:13 1995
|
||
***************
|
||
*** 70,76 ****
|
||
TIFFSetField(tif, TIFFTAG_IMAGELENGTH, h);
|
||
TIFFSetField(tif, TIFFTAG_COMPRESSION, comp);
|
||
|
||
! if (comment && strlen(comment)>0) {
|
||
TIFFSetField(tif, TIFFTAG_IMAGEDESCRIPTION, comment);
|
||
}
|
||
|
||
--- 70,76 ----
|
||
TIFFSetField(tif, TIFFTAG_IMAGELENGTH, h);
|
||
TIFFSetField(tif, TIFFTAG_COMPRESSION, comp);
|
||
|
||
! if (comment && strlen(comment) > (size_t) 0) {
|
||
TIFFSetField(tif, TIFFTAG_IMAGEDESCRIPTION, comment);
|
||
}
|
||
|
||
diff -c -r ../xv-3.10/bits/font5x9.h ./bits/font5x9.h
|
||
*** ../xv-3.10/bits/font5x9.h Thu Dec 22 14:12:58 1994
|
||
--- ./bits/font5x9.h Tue Jan 03 15:18:06 1995
|
||
***************
|
||
*** 21,27 ****
|
||
{0x0e, 0x11, 0x19, 0x15, 0x13, 0x11, 0x0e, 0x00, 0x00}, /* 0 */
|
||
{0x04, 0x06, 0x05, 0x04, 0x04, 0x04, 0x1f, 0x00, 0x00}, /* 1 */
|
||
{0x0e, 0x11, 0x10, 0x0c, 0x02, 0x01, 0x1f, 0x00, 0x00}, /* 2 */
|
||
! {0x0e, 0x11, 0x10, 0x0c, 0x02, 0x01, 0x1f, 0x00, 0x00}, /* 3 */
|
||
{0x09, 0x09, 0x09, 0x1f, 0x08, 0x08, 0x08, 0x00, 0x00}, /* 4 */
|
||
{0x1f, 0x01, 0x01, 0x0f, 0x10, 0x10, 0x0f, 0x00, 0x00}, /* 5 */
|
||
{0x0e, 0x01, 0x01, 0x0f, 0x11, 0x11, 0x0e, 0x00, 0x00}, /* 6 */
|
||
--- 21,27 ----
|
||
{0x0e, 0x11, 0x19, 0x15, 0x13, 0x11, 0x0e, 0x00, 0x00}, /* 0 */
|
||
{0x04, 0x06, 0x05, 0x04, 0x04, 0x04, 0x1f, 0x00, 0x00}, /* 1 */
|
||
{0x0e, 0x11, 0x10, 0x0c, 0x02, 0x01, 0x1f, 0x00, 0x00}, /* 2 */
|
||
! {0x0f, 0x10, 0x10, 0x0e, 0x10, 0x10, 0x0f, 0x00, 0x00}, /* 3 */
|
||
{0x09, 0x09, 0x09, 0x1f, 0x08, 0x08, 0x08, 0x00, 0x00}, /* 4 */
|
||
{0x1f, 0x01, 0x01, 0x0f, 0x10, 0x10, 0x0f, 0x00, 0x00}, /* 5 */
|
||
{0x0e, 0x01, 0x01, 0x0f, 0x11, 0x11, 0x0e, 0x00, 0x00}, /* 6 */
|
||
***************
|
||
*** 51,57 ****
|
||
{0x11, 0x13, 0x13, 0x15, 0x19, 0x19, 0x11, 0x00, 0x00}, /* N */
|
||
{0x0e, 0x11, 0x11, 0x11, 0x11, 0x11, 0x0e, 0x00, 0x00}, /* O */
|
||
{0x0f, 0x11, 0x11, 0x0f, 0x01, 0x01, 0x01, 0x00, 0x00}, /* P */
|
||
! {0x0f, 0x11, 0x11, 0x0f, 0x01, 0x01, 0x01, 0x00, 0x00}, /* Q */
|
||
{0x0f, 0x11, 0x11, 0x0f, 0x05, 0x09, 0x11, 0x00, 0x00}, /* R */
|
||
{0x0e, 0x11, 0x01, 0x0e, 0x10, 0x11, 0x0e, 0x00, 0x00}, /* S */
|
||
{0x1f, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00}, /* T */
|
||
--- 51,57 ----
|
||
{0x11, 0x13, 0x13, 0x15, 0x19, 0x19, 0x11, 0x00, 0x00}, /* N */
|
||
{0x0e, 0x11, 0x11, 0x11, 0x11, 0x11, 0x0e, 0x00, 0x00}, /* O */
|
||
{0x0f, 0x11, 0x11, 0x0f, 0x01, 0x01, 0x01, 0x00, 0x00}, /* P */
|
||
! {0x0e, 0x11, 0x11, 0x11, 0x11, 0x15, 0x0e, 0x18, 0x00}, /* Q */
|
||
{0x0f, 0x11, 0x11, 0x0f, 0x05, 0x09, 0x11, 0x00, 0x00}, /* R */
|
||
{0x0e, 0x11, 0x01, 0x0e, 0x10, 0x11, 0x0e, 0x00, 0x00}, /* S */
|
||
{0x1f, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00}, /* T */
|
||
|
||
diff -c -r ../xv-3.10/bits/xv_rev ./bits/xv_rev
|
||
*** ../xv-3.10/bits/xv_rev Thu Dec 22 14:12:54 1994
|
||
--- ./bits/xv_rev Fri Jan 13 17:37:10 1995
|
||
***************
|
||
*** 11,29 ****
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
|
||
! 0x00, 0x00, 0xa0, 0x03, 0x00, 0x04, 0x10, 0x00, 0x00, 0x20, 0x3c, 0x10,
|
||
! 0xe1, 0x41, 0x3c, 0x10, 0x01, 0x00, 0x20, 0x60, 0x04, 0x00, 0x04, 0x10,
|
||
! 0x00, 0x00, 0x30, 0x42, 0x90, 0x11, 0x42, 0x42, 0x18, 0x01, 0x00, 0xa0,
|
||
! 0x21, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x41, 0x48, 0x09, 0x20,
|
||
0x41, 0x14, 0x01, 0xc7, 0x7b, 0xe0, 0x80, 0x09, 0xc5, 0x13, 0x27, 0x13,
|
||
! 0x20, 0x20, 0x08, 0x89, 0x23, 0x71, 0x14, 0x81, 0x28, 0x23, 0x60, 0x60,
|
||
! 0x8a, 0x24, 0x93, 0xe8, 0x12, 0x20, 0x10, 0x04, 0x65, 0x14, 0x4e, 0x12,
|
||
! 0x01, 0xae, 0x24, 0xa0, 0xe0, 0x51, 0xa4, 0x54, 0x28, 0x02, 0x20, 0x0c,
|
||
! 0x04, 0x15, 0x14, 0x40, 0x79, 0x81, 0x49, 0x24, 0x21, 0x11, 0x50, 0x44,
|
||
! 0x54, 0x28, 0x02, 0x20, 0x02, 0x04, 0x09, 0x92, 0xa0, 0x16, 0x5d, 0x0c,
|
||
! 0xa2, 0x20, 0x16, 0x23, 0x04, 0x52, 0x24, 0x12, 0x20, 0x41, 0x02, 0x09,
|
||
! 0x89, 0x11, 0x10, 0x83, 0xeb, 0x61, 0x20, 0xe8, 0x20, 0xe4, 0x91, 0x23,
|
||
! 0x12, 0x20, 0x7f, 0x02, 0xf1, 0x08, 0x0e, 0x10, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
--- 11,29 ----
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
|
||
! 0x00, 0x00, 0xa0, 0x03, 0x00, 0x04, 0x10, 0x00, 0x00, 0x84, 0x07, 0xf1,
|
||
! 0xe0, 0x41, 0x3c, 0x10, 0x01, 0x00, 0x20, 0x60, 0x04, 0x00, 0x04, 0x10,
|
||
! 0x00, 0x00, 0x46, 0x08, 0x09, 0x11, 0x42, 0x42, 0x18, 0x01, 0x00, 0xa0,
|
||
! 0x21, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x25, 0x88, 0x04, 0x09, 0x22,
|
||
0x41, 0x14, 0x01, 0xc7, 0x7b, 0xe0, 0x80, 0x09, 0xc5, 0x13, 0x27, 0x13,
|
||
! 0x04, 0x84, 0x80, 0x88, 0x23, 0x71, 0x14, 0x81, 0x28, 0x23, 0x60, 0x60,
|
||
! 0x8a, 0x24, 0x93, 0xe8, 0x12, 0x04, 0x42, 0x40, 0x70, 0x12, 0x4e, 0x12,
|
||
! 0x01, 0xae, 0x24, 0xa0, 0xe0, 0x51, 0xa4, 0x54, 0x28, 0x02, 0x84, 0x41,
|
||
! 0x30, 0x00, 0x12, 0x40, 0x79, 0x81, 0x49, 0x24, 0x21, 0x11, 0x50, 0x44,
|
||
! 0x54, 0x28, 0x02, 0x44, 0x40, 0x08, 0x04, 0x91, 0xa0, 0x16, 0x5d, 0x0c,
|
||
! 0xa2, 0x20, 0x16, 0x23, 0x04, 0x52, 0x24, 0x12, 0x24, 0x28, 0x04, 0x8d,
|
||
! 0x88, 0x11, 0x10, 0x83, 0xeb, 0x61, 0x20, 0xe8, 0x20, 0xe4, 0x91, 0x23,
|
||
! 0x12, 0xe4, 0x2f, 0xfc, 0x71, 0x08, 0x0e, 0x10, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
|
||
diff -c -r ../xv-3.10/bits/xv_ver ./bits/xv_ver
|
||
*** ../xv-3.10/bits/xv_ver Thu Dec 22 14:12:58 1994
|
||
--- ./bits/xv_ver Fri Jan 13 17:34:48 1995
|
||
***************
|
||
*** 6,20 ****
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
! 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x82, 0x00,
|
||
! 0x00, 0x08, 0x00, 0x80, 0x1f, 0x04, 0x07, 0x00, 0x82, 0x00, 0x00, 0x08,
|
||
! 0x00, 0x80, 0x08, 0x86, 0x08, 0x00, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
! 0x04, 0x45, 0x10, 0x00, 0x24, 0x98, 0xe4, 0x89, 0x23, 0x03, 0x1c, 0x24,
|
||
! 0x10, 0x00, 0x24, 0xa6, 0x97, 0x49, 0xe4, 0x02, 0x23, 0x24, 0x10, 0x00,
|
||
! 0x14, 0x9e, 0x50, 0x2a, 0x24, 0x02, 0x20, 0x24, 0x10, 0x00, 0x18, 0x81,
|
||
! 0x20, 0x2a, 0x24, 0x42, 0x20, 0x24, 0x08, 0x00, 0x08, 0xb1, 0x00, 0x29,
|
||
! 0x22, 0x42, 0x98, 0x24, 0x06, 0x00, 0x08, 0x8e, 0xf0, 0xc8, 0x21, 0x82,
|
||
! 0x87, 0xc4, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
--- 6,20 ----
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
! 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0x00,
|
||
! 0x00, 0x02, 0x00, 0xe0, 0x07, 0xc1, 0x01, 0x00, 0x41, 0x00, 0x00, 0x02,
|
||
! 0x00, 0x20, 0x82, 0x21, 0x02, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
! 0x41, 0x11, 0x04, 0x00, 0x12, 0x26, 0x79, 0xe2, 0xc8, 0x00, 0x07, 0x09,
|
||
! 0xc4, 0x01, 0x92, 0xe9, 0x65, 0x12, 0xb9, 0xc0, 0x08, 0x09, 0x24, 0x02,
|
||
! 0x8a, 0x27, 0x94, 0x0a, 0x89, 0x00, 0x08, 0x09, 0x84, 0x03, 0x4c, 0x20,
|
||
! 0x88, 0x0a, 0x89, 0x10, 0x08, 0x09, 0x62, 0x02, 0x44, 0x2c, 0x40, 0x8a,
|
||
! 0x88, 0x10, 0x26, 0x89, 0x11, 0x03, 0x84, 0x23, 0x3c, 0x72, 0x88, 0xe0,
|
||
! 0x21, 0x71, 0xe0, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||
|
||
diff -c -r ../xv-3.10/tiff/tif_fax3.c ./tiff/tif_fax3.c
|
||
*** ../xv-3.10/tiff/tif_fax3.c Thu Dec 22 14:12:41 1994
|
||
--- ./tiff/tif_fax3.c Fri Dec 23 17:39:28 1994
|
||
***************
|
||
*** 370,376 ****
|
||
* Decode a code and return the associated run length.
|
||
*/
|
||
static int32
|
||
! decode_run(TIFF* tif, const u_short fsm[][256])
|
||
{
|
||
Fax3DecodeState *sp = (Fax3DecodeState *)tif->tif_data;
|
||
int state = sp->b.bit;
|
||
--- 370,376 ----
|
||
* Decode a code and return the associated run length.
|
||
*/
|
||
static int32
|
||
! decode_run(TIFF* tif, /*const*/ u_short fsm[][256])
|
||
{
|
||
Fax3DecodeState *sp = (Fax3DecodeState *)tif->tif_data;
|
||
int state = sp->b.bit;
|
||
|
||
diff -c -r ../xv-3.10/tiff/tiffcomp.h ./tiff/tiffcomp.h
|
||
*** ../xv-3.10/tiff/tiffcomp.h Thu Dec 22 14:12:42 1994
|
||
--- ./tiff/tiffcomp.h Thu Jan 19 12:47:56 1995
|
||
***************
|
||
*** 67,72 ****
|
||
--- 67,76 ----
|
||
#endif
|
||
#endif
|
||
|
||
+ #ifdef isc
|
||
+ #define BSDTYPES
|
||
+ #endif
|
||
+
|
||
/*
|
||
* Workarounds for BSD lseek definitions.
|
||
*/
|
||
|
||
diff -c -r ../xv-3.10/vms/Makefile.mms ./vms/Makefile.mms
|
||
*** ../xv-3.10/vms/Makefile.mms Thu Dec 22 14:12:37 1994
|
||
--- ./vms/Makefile.mms Sun Dec 25 03:21:22 1994
|
||
***************
|
||
*** 11,30 ****
|
||
# 15-APR-1993 for v3.00 (DEC C changes)
|
||
# 25-MAY-1993 merged ALPHA.MMS and MAKEFILE.MMS
|
||
# 27-APR-1994 for v3.01
|
||
! # 6-DEC-1994 for v3.10
|
||
#
|
||
# Modeled after the original Unix Makefile for xv
|
||
# Most of the Unix comments have been left intact to help debug any
|
||
# problems.
|
||
|
||
- #********
|
||
- #
|
||
- # REQUIRED USER EDIT POINT!!!!!!!!!!!
|
||
- # You must put in the correct place where the root of this XV
|
||
- # directory is located
|
||
- #
|
||
- #********
|
||
- XVDIR = [XV-3_10]
|
||
|
||
# BE SURE TO SET THIS TO YOUR SITE'S DESTINATION DIRECTORY...!!!
|
||
BINDIR = Sys$Disk:[]
|
||
--- 11,22 ----
|
||
# 15-APR-1993 for v3.00 (DEC C changes)
|
||
# 25-MAY-1993 merged ALPHA.MMS and MAKEFILE.MMS
|
||
# 27-APR-1994 for v3.01
|
||
! # 23-DEC-1994 for v3.10
|
||
#
|
||
# Modeled after the original Unix Makefile for xv
|
||
# Most of the Unix comments have been left intact to help debug any
|
||
# problems.
|
||
|
||
|
||
# BE SURE TO SET THIS TO YOUR SITE'S DESTINATION DIRECTORY...!!!
|
||
BINDIR = Sys$Disk:[]
|
||
***************
|
||
*** 57,64 ****
|
||
# VMS MMS USERS!!!
|
||
#
|
||
# if you don't use the JPEG package as supplied with XV, you
|
||
! # will need fill in the complete directory specifications for
|
||
! # BOTH JPEGDIR and XVDIR!!
|
||
#
|
||
JPEG = ,HAVE_JPEG
|
||
JPEGDIR = [.JPEG]
|
||
--- 49,55 ----
|
||
# VMS MMS USERS!!!
|
||
#
|
||
# if you don't use the JPEG package as supplied with XV, you
|
||
! # will need fill in the complete directory specifications for JPEGDIR.
|
||
#
|
||
JPEG = ,HAVE_JPEG
|
||
JPEGDIR = [.JPEG]
|
||
***************
|
||
*** 72,79 ****
|
||
# Also, comment out the LIBTIFF dependancy at the end of this Makefile
|
||
#
|
||
# if you don't use the TIFF package as supplied with XV, you
|
||
! # will need to fill in the complete directory specifications for
|
||
! # BOTH TIFFDIR and XVDIR!!
|
||
#
|
||
TIFF = ,HAVE_TIFF
|
||
TIFFDIR = [.TIFF]
|
||
--- 63,69 ----
|
||
# Also, comment out the LIBTIFF dependancy at the end of this Makefile
|
||
#
|
||
# if you don't use the TIFF package as supplied with XV, you
|
||
! # will need to fill in the complete directory specifications for TIFFDIR.
|
||
#
|
||
TIFF = ,HAVE_TIFF
|
||
TIFFDIR = [.TIFF]
|
||
***************
|
||
*** 135,145 ****
|
||
@- Define /NoLog Sys DECC$Library_Include
|
||
.else
|
||
.ifdef DECC
|
||
! <20> @- Define /NoLog Sys DECC$Library_Include
|
||
.else
|
||
@- Define /NoLog Sys Sys$Library
|
||
.endif
|
||
@- Define /NoLog X11 DECW$Include
|
||
.endif
|
||
|
||
all : $(BITS) $(OPTS) lib xv bggen decompress xcmap xvpictoppm help
|
||
--- 125,136 ----
|
||
@- Define /NoLog Sys DECC$Library_Include
|
||
.else
|
||
.ifdef DECC
|
||
! @- Define /NoLog Sys DECC$Library_Include
|
||
.else
|
||
@- Define /NoLog Sys Sys$Library
|
||
.endif
|
||
@- Define /NoLog X11 DECW$Include
|
||
+ @- XVDIR = F$Environment ("Default")
|
||
.endif
|
||
|
||
all : $(BITS) $(OPTS) lib xv bggen decompress xcmap xvpictoppm help
|
||
***************
|
||
*** 181,204 ****
|
||
$(JPEGLIB) :
|
||
Set Default $(JPEGDIR)
|
||
.ifdef ALPHA
|
||
! $(MMS) $(MMSDEFAULTS) /Description = MAKEFILE.$(MMS) /Macro = "ALPHA = 1" LIBJPEG.OLB
|
||
.else
|
||
! $(MMS) $(MMSDEFAULTS) /Description = MAKEFILE.$(MMS) LIBJPEG.OLB
|
||
.endif
|
||
! Set Default $(XVDIR)
|
||
|
||
$(TIFFLIB) :
|
||
Set Default $(TIFFDIR)
|
||
.ifdef ALPHA
|
||
! $(MMS) $(MMSDEFAULTS) /Description = MAKEFILE.$(MMS) /Macro = "ALPHA = 1" LIBTIFF.OLB
|
||
.else
|
||
.ifdef DECC
|
||
! $(MMS) $(MMSDEFAULTS) /Description = MAKEFILE.$(MMS) /Macro = "ALPHA = 1" LIBTIFF.OLB
|
||
.else
|
||
! $(MMS) $(MMSDEFAULTS) /Description = MAKEFILE.$(MMS) LIBTIFF.OLB
|
||
.endif
|
||
.endif
|
||
! Set Default $(XVDIR)
|
||
|
||
$(XVLIB) : $(OBJS)
|
||
If "''F$Search ("$(XVLIB)")'" .eqs. "" Then Library /Create $(XVLIB)
|
||
--- 172,195 ----
|
||
$(JPEGLIB) :
|
||
Set Default $(JPEGDIR)
|
||
.ifdef ALPHA
|
||
! $(MMS) $(MMSDEFAULTS) /Description = MAKEFILE.MMS /Macro = "ALPHA = 1" LIBJPEG.OLB
|
||
.else
|
||
! $(MMS) $(MMSDEFAULTS) /Description = MAKEFILE.MMS LIBJPEG.OLB
|
||
.endif
|
||
! Set Default 'XVDIR'
|
||
|
||
$(TIFFLIB) :
|
||
Set Default $(TIFFDIR)
|
||
.ifdef ALPHA
|
||
! $(MMS) $(MMSDEFAULTS) /Description = MAKEFILE.MMS /Macro = "ALPHA = 1" LIBTIFF.OLB
|
||
.else
|
||
.ifdef DECC
|
||
! $(MMS) $(MMSDEFAULTS) /Description = MAKEFILE.MMS /Macro = "ALPHA = 1" LIBTIFF.OLB
|
||
.else
|
||
! $(MMS) $(MMSDEFAULTS) /Description = MAKEFILE.MMS LIBTIFF.OLB
|
||
.endif
|
||
.endif
|
||
! Set Default 'XVDIR'
|
||
|
||
$(XVLIB) : $(OBJS)
|
||
If "''F$Search ("$(XVLIB)")'" .eqs. "" Then Library /Create $(XVLIB)
|
||
***************
|
||
*** 273,280 ****
|
||
- Delete /NoConfirm /NoLog *.obj;*,*.exe;*,*.log;*,*.olb;*,*.hlb;*
|
||
- Purge /NoConfirm /NoLog
|
||
Set Default [.JPEG]
|
||
! $(MMS) /Description = MAKEFILE.$(MMS) clean
|
||
- Delete /NoConfirm /NoLog *.olb;*
|
||
Set Default [-.TIFF]
|
||
! $(MMS) /Description = MAKEFILE.$(MMS) clean
|
||
Set Default [-]
|
||
--- 264,271 ----
|
||
- Delete /NoConfirm /NoLog *.obj;*,*.exe;*,*.log;*,*.olb;*,*.hlb;*
|
||
- Purge /NoConfirm /NoLog
|
||
Set Default [.JPEG]
|
||
! $(MMS) /Description = MAKEFILE.MMS clean
|
||
- Delete /NoConfirm /NoLog *.olb;*
|
||
Set Default [-.TIFF]
|
||
! $(MMS) /Description = MAKEFILE.MMS clean
|
||
Set Default [-]
|
||
|
||
diff -c -r ../xv-3.10/vms/README.vms ./vms/README.vms
|
||
*** ../xv-3.10/vms/README.vms Thu Dec 22 14:12:37 1994
|
||
--- ./vms/README.vms Sun Dec 25 03:21:22 1994
|
||
***************
|
||
*** 1,9 ****
|
||
! 6-Dec-1994
|
||
|
||
! First, read the release notes for the Unix version of XV as well
|
||
! as these. You can ignore the Unix specific comments, but there are
|
||
! references to the config.h file for local configurations and general
|
||
! use of the program that are relevant to VMS users as well.
|
||
|
||
Release notes for building XV (v3.10) on a VMS platform. This
|
||
includes the newer ALPHA/VMS machines. As in the previous release,
|
||
--- 1,10 ----
|
||
! 23-DEC-1994
|
||
|
||
! First, read the various INSTALL and README files for the Unix
|
||
! version of XV as well as these. You can ignore the Unix specific
|
||
! comments, but there are references to the config.h file for local
|
||
! configurations and general use of the program that are relevant to
|
||
! VMS users as well.
|
||
|
||
Release notes for building XV (v3.10) on a VMS platform. This
|
||
includes the newer ALPHA/VMS machines. As in the previous release,
|
||
***************
|
||
*** 24,42 ****
|
||
|
||
SETUP.COM
|
||
A simple command procedure to setup the final compiled XV
|
||
! package of programs. It can be executed by itself or used with
|
||
! many of the commonly available SETUP packages (i.e., the
|
||
! FERMILAB version). If it is kept in the same directory as the
|
||
! binaries, it will be able to get the necessary symbols setup
|
||
! anywhere the directory structure is located WITHOUT the need to
|
||
! edit the command procedure. Move them all around together and
|
||
! you will be OK.
|
||
|
||
MAKEFILE.MMS (in the top level directory)
|
||
! This is a MMS description file for the VMS MMS utility. YOU
|
||
! SHOULD EDIT THE FILE FIRST TO MAKE SURE THE CUSTOMIZING FEATURES
|
||
! ARE APPROPRIATE FOR YOUR SYSTEM. For users without MMS you will
|
||
! need to use MAKE_XV.COM instead.
|
||
|
||
Installation Instructions:
|
||
|
||
--- 25,48 ----
|
||
|
||
SETUP.COM
|
||
A simple command procedure to setup the final compiled XV
|
||
! package of programs. It helps the aux programs of XV be found
|
||
! by DCL foreign symbols. If you don't want to use the names I
|
||
! have chosen for them, you should be able to alter the CONFIG.H
|
||
! file to point to the names you want to use instead. This has
|
||
! not been tested by me, so let me know if you try this. It
|
||
! should work! :) It can be executed by itself or used with many
|
||
! of the commonly available SETUP packages (i.e., the FERMILAB
|
||
! version). If it is kept in the same directory as the binaries,
|
||
! it will be able to get the necessary symbols setup anywhere the
|
||
! directory structure is located WITHOUT the need to edit the
|
||
! command procedure. Move them all around together and you will
|
||
! be OK.
|
||
|
||
MAKEFILE.MMS (in the top level directory)
|
||
! This is a description file for the VMS MMS (or the PD MMK)
|
||
! utility. YOU SHOULD BROWSE THE FILE FIRST TO MAKE SURE THE
|
||
! CUSTOMIZING FEATURES ARE APPROPRIATE FOR YOUR SYSTEM. For users
|
||
! without MMS (MMK) you will need to use MAKE_XV.COM instead.
|
||
|
||
Installation Instructions:
|
||
|
||
***************
|
||
*** 100,114 ****
|
||
to resolve first!!! Note specifically the references to JPEG
|
||
and TIFF. This is also true for the MAKEFILE.MMS in the JPEG
|
||
sub-directory and the MAKEFILE.MMS file in the TIFF
|
||
! sub-directory. Also check the top-level directory name at the
|
||
! top of the MMS file. You have to put in your local choice of
|
||
! name. (I was lazy in not trying to autodetect it, sorry.)
|
||
!
|
||
|
||
! EXCEPT for the destination of the binaries, root of the
|
||
! directory tree, and X11 Window interface, I *think* it should
|
||
! work for everyone without any modifications. (famous last
|
||
! words...)
|
||
|
||
When you are satisfied that everything is correct for your
|
||
site, just type
|
||
--- 106,116 ----
|
||
to resolve first!!! Note specifically the references to JPEG
|
||
and TIFF. This is also true for the MAKEFILE.MMS in the JPEG
|
||
sub-directory and the MAKEFILE.MMS file in the TIFF
|
||
! sub-directory.
|
||
|
||
! EXCEPT for the destination of the binaries, and X11 Window
|
||
! interface, I *think* it should work for everyone without any
|
||
! modifications. (famous last words...)
|
||
|
||
When you are satisfied that everything is correct for your
|
||
site, just type
|
||
|
||
diff -c -r ../xv-3.10/vms/tiff.patches ./vms/tiff.patches
|
||
*** ../xv-3.10/vms/tiff.patches Thu Dec 22 14:12:38 1994
|
||
--- ./vms/tiff.patches Thu Jan 19 12:47:14 1995
|
||
***************
|
||
*** 5,10 ****
|
||
--- 5,11 ----
|
||
In tiff/Makefile.hpux, you need to add -D_HPUX_SOURCE to CFLAGS.
|
||
Otherwise libtiff won't build under gcc or strict-ANSI cc.
|
||
|
||
+ In tiff/tiffcomp.h, add '#ifdef isc ... #define BSDTYPES ... #endif'
|
||
|
||
Index: tiff/Makefile.mms
|
||
*** /dev/null Wed Dec 14 08:22:27 1994
|
||
|
||
|
||
*** /dev/null Mon Jan 23 20:08:17 1995
|
||
--- BUGS Thu Jan 19 13:10:07 1995
|
||
***************
|
||
*** 0 ****
|
||
--- 1,21 ----
|
||
+ DOCS:
|
||
+ File docs/xvdoc.ps has an error in the banner for page 2. The page title is
|
||
+ "Section 2: The Image Window" when it should be "Section 1: Overview".
|
||
+
|
||
+ Add mention of '-pkludge' and 'popupKludge'
|
||
+
|
||
+ Hall of Fame: Lester Ingber should be 'ingber@alumni.caltech.edu'
|
||
+
|
||
+
|
||
+ From: James Ralston Crawford (qralston+@pitt.edu)
|
||
+ When deleting files in 'xv controls' window, it should also delete
|
||
+ thumbnail file, if any
|
||
+
|
||
+
|
||
+ From: Mitchell Blank Jr <blankm@cae.wisc.edu>
|
||
+ (try an use schnauzer in /usr/feh/foo, where feh is rwx--x--x. Need to
|
||
+ set a var each time chdir is successfully called (make xv_chdir).
|
||
+ Then in xv_getwd, if getcwd() fails, try stat()'ing the var.
|
||
+ If it exists, assume we're there, and return the var. Otherwise, fall back
|
||
+ to other directories...
|
||
+
|
||
|
||
*** /dev/null Mon Jan 23 20:08:17 1995
|
||
--- docs/vdcomp.man Fri Jan 13 15:18:47 1995
|
||
***************
|
||
*** 0 ****
|
||
--- 1,82 ----
|
||
+ .\"
|
||
+ .\" $Id: vdcomp.man,v 1.2 1995/01/12 23:35:28 qralston Exp $
|
||
+ .\"
|
||
+ .\" $Log: vdcomp.man,v $
|
||
+ .\" Revision 1.2 1995/01/12 23:35:28 qralston
|
||
+ .\" Created from the information in the comments in vdcomp.c.
|
||
+ .\" James Ralston Crawford <qralston+@pitt.edu>
|
||
+ .\"
|
||
+ .TH vdcomp 1
|
||
+ .SH Name
|
||
+ \fIvdcomp\fP - decompress a compressed PDS image
|
||
+ .SH Synopsis
|
||
+ \fIvdcomp\fP [ infile ] [ outfile ] [ format-code ]
|
||
+ .SH Description
|
||
+ The \fIvdcomp\fP program reads a variable length compressed PDS image
|
||
+ and outputs a fixed length uncompressed image file in PDS format with
|
||
+ labels, image histogram, engineering table, line header table and an
|
||
+ image with PDS, FITS, VICAR or no labels.
|
||
+ .PP
|
||
+ If used on a non-byte-swapped machine the image histogram is
|
||
+ un-swapped.
|
||
+ .SH Options
|
||
+ \fIVdcomp\fP will prompt for any options that are not supplied on the
|
||
+ command-line.
|
||
+ .PP
|
||
+ \fIinfile\fP
|
||
+ .br
|
||
+ .RS
|
||
+ The name of compressed image file.
|
||
+ .RE
|
||
+ .PP
|
||
+ \fIoutfile\fP
|
||
+ .br
|
||
+ .RS
|
||
+ The name of uncompressed image file.
|
||
+ .RE
|
||
+ .PP
|
||
+ \fIformat-code\fP
|
||
+ .br
|
||
+ .RS
|
||
+ Select from the following list:
|
||
+ .br
|
||
+ .RS
|
||
+ \fI1\fP - SFDU/PDS format [default]
|
||
+ .br
|
||
+ \fI2\fP - FITS format
|
||
+ .br
|
||
+ \fI3\fP - VICAR format
|
||
+ .br
|
||
+ \fI4\fP - unlabelled binary array
|
||
+ .RE
|
||
+ .RE
|
||
+ .SH Limitations
|
||
+ This program has been tested on a VAX 780 (VMS 4.6), SUN Workstation
|
||
+ (UNIX 4.2, release 3.4), an IBM PC (MICROSOFT 5.1 compiler) and
|
||
+ Macintosh IIx using Lightspeed C version 3.0. When converting to
|
||
+ other systems, check for portability conflicts.
|
||
+ .SH Credits
|
||
+ This program uses Kris Becker's subroutine DECOMP.C (which is included
|
||
+ in this program in a shortened version).
|
||
+ .SH History
|
||
+ bradley@cis.upenn.edu 06-23-94 ansi-fied program
|
||
+ .PP
|
||
+ datri@convex.com, 11-15-91 added recognition of - as stdout for output
|
||
+ filename; disabled various messages; directed messages to stderr;
|
||
+ added exit status
|
||
+ .PP
|
||
+ DEC89 Modified program to handle both Voyager and Viking images.
|
||
+ .PP
|
||
+ OCT89 Converted Voyager decompression program to handle Viking
|
||
+ compressed images. Changed obuf to 'unsigned' to simplify computation
|
||
+ of checksum.
|
||
+ .PP
|
||
+ AUG89 Added code to get command line arguments for filenames and
|
||
+ output format; routines to free memory used by the Huffman tree);
|
||
+ fixed the SFDU label output length; and modified the I/O routines so
|
||
+ that the open for Host type 2 uses binary I/O.
|
||
+ .PP
|
||
+ JUN89 Fixed READVAR, to get length on 16-bit unswapped hosts.
|
||
+ .PP
|
||
+ JUL88 C driver to decompress standard Voyager Compressed images by
|
||
+ Mike Martin 1989/12/02.
|
||
|
||
*** /dev/null Mon Jan 23 20:23:48 1995
|
||
--- docs/xv.ann Tue Jan 03 13:58:15 1995
|
||
***************
|
||
*** 0 ****
|
||
--- 1,38 ----
|
||
+ They said it couldn't be done. They said it never *would* be done.
|
||
+ They smiled knowingly to themselves as each predicted release date
|
||
+ inevitably passed by, unmarked by the emergence of a new version...
|
||
+
|
||
+ Well, who asked them! And who do they think they are, anyhow!?!
|
||
+
|
||
+ Announcing the Exciting New Release of XV, Version 3.10!
|
||
+
|
||
+ Finally, all the stuff you've been waiting for: image cut & paste, pixel
|
||
+ editing, text annotation (of a sort), nifty new algorithms, new image formats
|
||
+ (Targa, XPM, FITS, XWD, IFF), improved schnauzing capabilities, a spiffy
|
||
+ new 'pad' command, and whatnot. Plenty of whatnot.
|
||
+
|
||
+ Of course, we're particularly proud of our Exclusive 3-D Fish Technology.
|
||
+
|
||
+ At the moment, you can get this decidedly 'fine' piece of software via
|
||
+ anonymous ftp on the following sites:
|
||
+
|
||
+ Hostname Directory
|
||
+ -------- ---------
|
||
+ ftp.cis.upenn.edu: pub/xv
|
||
+ ftp.upenn.edu: data/bradley
|
||
+ ftp.duke.edu: pub/archive/xv
|
||
+ gatekeeper.dec.com: pub/graphics/xv
|
||
+
|
||
+ The file is called 'xv-3.10.tar.gz' (or 'xv-3.10.tar.Z' if you don't have
|
||
+ the 'gunzip' program).
|
||
+
|
||
+ BTW, if any of you fine folks can get these files put up on one of the major
|
||
+ ftp sites (wustl, gatekeeper, etc.) please do so, and let me know!
|
||
+
|
||
+ Enjoy!
|
||
+
|
||
+ John Bradley
|
||
+
|
||
+ -------------------------
|
||
+ Note: These tar files (xv-3.10.tar.Z and xv-3.10.tar.gz) have been replaced
|
||
+ as of 12/22/94, as the initial ones wouldn't build correctly on VMS.
|