| 987 |
|
} |
| 988 |
|
while (n > viewnum) { /* scan to desired view */ |
| 989 |
|
if (fgets(linebuf, sizeof(linebuf), viewfp) == NULL) |
| 990 |
< |
return(viewnum==1 ? &curview : NULL); |
| 990 |
> |
return(viewnum==1 ? &curview : (VIEW *)NULL); |
| 991 |
|
if (isview(linebuf) && sscanview(&curview, linebuf) > 0) |
| 992 |
|
viewnum++; |
| 993 |
|
} |
| 1020 |
|
if (n == 0) { /* signal to close file */ |
| 1021 |
|
if (expfp != NULL) { |
| 1022 |
|
fclose(expfp); |
| 1023 |
+ |
free((char *)exppos); |
| 1024 |
|
expfp = NULL; |
| 1025 |
|
} |
| 1026 |
|
return(NULL); |
| 1027 |
< |
} |
| 1027 |
> |
} else if (n > vint(END)) /* request past end (error?) */ |
| 1028 |
> |
return(NULL); |
| 1029 |
|
if (!vdef(EXPOSURE)) /* no setting (auto) */ |
| 1030 |
|
return(NULL); |
| 1031 |
|
if (isflt(vval(EXPOSURE))) /* always the same */ |
| 1063 |
|
} |
| 1064 |
|
curfrm++; |
| 1065 |
|
cp = fskip(expval); /* check format */ |
| 1066 |
< |
if (cp == NULL || *cp != '\n') { |
| 1066 |
> |
if (cp != NULL) |
| 1067 |
> |
while (isspace(*cp)) |
| 1068 |
> |
*cp++ = '\0'; |
| 1069 |
> |
if (cp == NULL || *cp) { |
| 1070 |
|
fprintf(stderr, |
| 1071 |
|
"%s: exposure format error on line %d\n", |
| 1072 |
|
vval(EXPOSURE), curfrm); |
| 1073 |
|
quit(1); |
| 1074 |
|
} |
| 1070 |
– |
*cp = '\0'; |
| 1075 |
|
} |
| 1076 |
|
return(expval); /* return value */ |
| 1077 |
|
} |