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

Comparing ray/src/hd/rhdisp.c (file contents):
Revision 3.40 by gwlarson, Thu Mar 4 10:14:52 1999 UTC vs.
Revision 3.45 by greg, Tue May 13 17:58:33 2003 UTC

# Line 1 | Line 1
1 /* Copyright (c) 1998 Silicon Graphics, Inc. */
2
1   #ifndef lint
2 < static char SCCSid[] = "$SunId$ SGI";
2 > static const char       RCSid[] = "$Id$";
3   #endif
6
4   /*
5   * Holodeck display process.
6   */
# Line 22 | Line 19 | static char SCCSid[] = "$SunId$ SGI";
19   #define FSIZDEF         0.125   /* default focus frame size */
20   #endif
21  
22 + #if defined(freebsd)
23 + #define fbufcnt(f)      ((f)->_r)
24 + #elif defined(__GNUC__)
25 + #define fbufcnt(f)      ((f)->_IO_read_end - (f)->_IO_read_ptr)
26 + #else
27 + #define fbufcnt(f)      ((f)->_cnt)
28 + #endif
29 +
30   HOLO    *hdlist[HDMAX+1];       /* global holodeck list */
31  
32   char    *hdgfn[HDMAX];          /* holodeck section geometry list */
# Line 40 | Line 45 | char   *progname;              /* global argv[0] */
45   FILE    *sstdin, *sstdout;      /* server's standard input and output */
46  
47   #ifdef DEBUG
43 #include <sys/types.h>
48   extern time_t   time();
49   static time_t   tmodesw;
50   static time_t   timm, tadd;
# Line 56 | Line 60 | main(argc, argv)
60   int     argc;
61   char    *argv[];
62   {
59        extern int      eputs();
63          int     rdy, inp, res = 0, pause = 0;
64  
65          progname = argv[0];
# Line 158 | Line 161 | disp_wait()                    /* wait for more input */
161          if (hdlist[0] == NULL)
162                  return(RDY_SRV);        /* initialize first */
163          flgs = 0;               /* flag what's ready already */
164 <        if (imm_mode || stdin->_cnt > 0)
164 >        if (imm_mode || fbufcnt(stdin) > 0)
165                  flgs |= RDY_SRV;
166 <        if (sstdin != NULL && sstdin->_cnt > 0)
166 >        if (sstdin != NULL && fbufcnt(sstdin) > 0)
167                  flgs |= RDY_SIN;
168          if (odev.inpready)
169                  flgs |= RDY_DEV;
# Line 213 | Line 216 | char   *gfn, *pfn;
216          hdlist[hd] = (HOLO *)malloc(sizeof(HOLO));
217          if (hdlist[hd] == NULL)
218                  error(SYSTEM, "out of memory in add_holo");
219 <        bcopy((char *)hdg, (char *)hdlist[hd], sizeof(HDGRID));
219 >        bcopy((void *)hdg, (void *)hdlist[hd], sizeof(HDGRID));
220          hdcompgrid(hdlist[hd]);
221          hdgfn[hd] = savestr(gfn);
222          hdpfn[hd] = pfn && *pfn ? savestr(pfn) : (char *)NULL;
# Line 476 | Line 479 | serv_result()                  /* get next server result and process
479                          if (buf == NULL)
480                                  buf = (char *)malloc(bufsiz=msg.nbytes);
481                          else
482 <                                buf = (char *)realloc(buf, bufsiz=msg.nbytes);
482 >                                buf = (char *)realloc((void *)buf,
483 >                                                bufsiz=msg.nbytes);
484                          if (buf == NULL)
485                                  error(SYSTEM, "out of memory in serv_result");
486                  }
# Line 563 | Line 567 | char   *p;
567   }
568  
569  
570 + void
571   eputs(s)                        /* put error message to stderr */
572   register char  *s;
573   {
# Line 582 | Line 587 | register char  *s;
587   }
588  
589  
590 + void
591   quit(code)                      /* clean up and exit */
592   int     code;
593   {

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines