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

Comparing ray/src/util/rad.c (file contents):
Revision 2.7 by greg, Tue Apr 6 17:21:04 1993 UTC vs.
Revision 2.8 by greg, Tue May 18 13:07:56 1993 UTC

# Line 799 | Line 799 | char   *ro;
799          }
800   #ifdef MSDOS
801          else if (n > 50) {
802 <                register char   *evp = bmalloc(n+6);
803 <                if (evp == NULL)
804 <                        syserr(progname);
805 <                strcpy(evp, "ROPT=");
806 <                strcat(evp, ro);
807 <                if (putenv(evp) != 0) {
808 <                        fprintf(stderr, "%s: out of environment space\n",
809 <                                        progname);
810 <                        exit(1);
811 <                }
802 >                setenv("ROPT", ro+1);
803                  strcpy(ro, " $ROPT");
804          }
805   #endif
# Line 854 | Line 845 | register char  *vs;
845          register int    i;
846          double  cent[3], dim[3], mult, d;
847  
848 <        if (vs == NULL || *vs == '-')
848 >        if (*vs == '-')
849                  return(vs);
850          upax = 0;                       /* get the up vector */
851          if (vdef(UP)) {
# Line 948 | Line 939 | register char  *vs;
939                          cp += strlen(cp);
940                  }
941          }
942 <                                        /* append any additional options */
943 <        strcpy(cp, vs);
942 >        strcpy(cp, vs);                 /* append any additional options */
943 > #ifdef MSDOS
944 >        if (strlen(viewopts) > 40) {
945 >                setenv("VIEW", viewopts);
946 >                return("$VIEW");
947 >        }
948 > #endif
949          return(viewopts);
950   }
951  
# Line 957 | Line 953 | register char  *vs;
953   char *
954   getview(n, vn)                          /* get view n, or NULL if none */
955   int     n;
956 < char    *vn;
956 > char    *vn;            /* returned view name */
957   {
958 <        register char   *mv;
958 >        register char   *mv = NULL;
959  
960 <        if (viewselect != NULL) {
960 >        if (viewselect != NULL) {               /* command-line selected */
961                  if (n)                          /* only do one */
962                          return(NULL);
963                  if (viewselect[0] == '-') {     /* already specified */
# Line 980 | Line 976 | char   *vn;
976                                  return(specview(mv));
977                  return(specview(viewselect));   /* standard view? */
978          }
979 <        if (vn != NULL && (mv = nvalue(vv+VIEW, n)) != NULL) {
979 >        mv = nvalue(vv+VIEW, n);                /* use view n */
980 >        if (vn != NULL & mv != NULL) {
981                  if (*mv != '-')
982                          while (*mv && !isspace(*mv))
983                                  *vn++ = *mv++;
984                  *vn = '\0';
985          }
986 <        return(specview(nvalue(vv+VIEW, n)));   /* use view n */
986 >        return(specview(mv));
987   }
988  
989  
# Line 1128 | Line 1125 | char   *fn;
1125                  return(0);
1126          return(unlink(fn));
1127   }
1128 +
1129 +
1130 + #ifdef MSDOS
1131 + setenv(vname, value)            /* set an environment variable */
1132 + char    *vname, *value;
1133 + {
1134 +        register char   *evp;
1135 +
1136 +        evp = bmalloc(strlen(vname)+strlen(value)+2);
1137 +        if (evp == NULL)
1138 +                syserr(progname);
1139 +        sprintf(evp, "%s=%s", vname, value);
1140 +        if (putenv(evp) != 0) {
1141 +                fprintf(stderr, "%s: out of environment space\n", progname);
1142 +                exit(1);
1143 +        }
1144 +        if (!silent)
1145 +                printf("set %s\n", evp);
1146 + }
1147 + #endif
1148  
1149  
1150   badvalue(vc)                    /* report bad variable value and exit */

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines