ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/util/getinfo.c
(Generate patch)

Comparing ray/src/util/getinfo.c (file contents):
Revision 1.1 by greg, Thu Feb 2 10:49:19 1989 UTC vs.
Revision 2.4 by gwlarson, Tue Oct 27 08:47:17 1998 UTC

# Line 1 | Line 1
1 < /* Copyright (c) 1986 Regents of the University of California */
1 > /* Copyright (c) 1992 Regents of the University of California */
2  
3   #ifndef lint
4   static char SCCSid[] = "$SunId$ LBL";
# Line 12 | Line 12 | static char SCCSid[] = "$SunId$ LBL";
12  
13   #include  <stdio.h>
14  
15 + #ifdef MSDOS
16 + #include <fcntl.h>
17 + extern int  _fmode;
18 + #endif
19  
20 + extern int  fputs();
21 +
22 +
23 + int
24   tabstr(s)                               /* put out line followed by tab */
25   register char  *s;
26   {
# Line 22 | Line 30 | register char  *s;
30          }
31          if (*--s == '\n')
32                  putchar('\t');
33 +        return(0);
34   }
35  
36  
37   main(argc, argv)
38   int  argc;
39 < char  *argv[];
39 > char  **argv;
40   {
41          int  dim = 0;
42          FILE  *fp;
# Line 36 | Line 45 | char  *argv[];
45          if (argc > 1 && !strcmp(argv[1], "-d")) {
46                  argc--; argv++;
47                  dim = 1;
48 + #ifdef MSDOS
49 +                setmode(fileno(stdin), _fmode = O_BINARY);
50 + #endif
51 +        } else if (argc == 2 && !strcmp(argv[1], "-")) {
52 + #ifdef MSDOS
53 +                setmode(fileno(stdin), O_BINARY);
54 +                setmode(fileno(stdout), O_BINARY);
55 + #endif
56 +                getheader(stdin, NULL, NULL);
57 +                copycat();
58 +                exit(0);
59          }
60          for (i = 1; i < argc; i++) {
61                  fputs(argv[i], stdout);
# Line 47 | Line 67 | char  *argv[];
67                                  getdim(fp);
68                          } else {
69                                  tabstr(":\n");
70 <                                getheader(fp, tabstr);
70 >                                getheader(fp, tabstr, NULL);
71                                  putchar('\n');
72                          }
73                          fclose(fp);
# Line 57 | Line 77 | char  *argv[];
77                  if (dim) {
78                          getdim(stdin);
79                  } else {
80 <                        copyheader(stdin, stdout);
80 >                        getheader(stdin, fputs, stdout);
81                          putchar('\n');
82                  }
83          exit(0);
# Line 70 | Line 90 | register FILE  *fp;
90          int  j;
91          register int  c;
92  
93 <        getheader(fp, NULL);    /* skip header */
93 >        getheader(fp, NULL, NULL);      /* skip header */
94  
95          switch (c = getc(fp)) {
96          case '+':               /* picture */
# Line 96 | Line 116 | register FILE  *fp;
116                  fputs("unknown file type\n", stdout);
117                  break;
118          }
119 + }
120 +
121 +
122 + copycat()                       /* copy input to output */
123 + {
124 +        register int    c;
125 +
126 +        while ((c = getchar()) != EOF)
127 +                putchar(c);
128   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines