]> Pileus Git - ~andy/rsl/blobdiff - src/uf_to_radar.c
Open files in binary mode for Win32
[~andy/rsl] / src / uf_to_radar.c
index ad806c876524d9f3e76d5d1febe542a9dfad8376..463f969e9b327090b4c96cbe7aa214b97ec738fe 100644 (file)
 #include <string.h>
 #include <stdlib.h>
 #include <unistd.h>
-
-/* This allows us to use RSL_ftype, RSL_f_list, RSL_invf_list from rsl.h. */
-#define USE_RSL_VARS
 #include "rsl.h"
 
 extern int radar_verbose_flag;
-typedef short UF_buffer[16384]; /* Some UF files are bigger than 4096
+/* Changed old buffer size (16384) for larger dualpol files.  BLK 5/18/2011 */
+typedef short UF_buffer[20000]; /* Some UF files are bigger than 4096
                                  * that the UF doc's specify.
                                  */
 
@@ -485,7 +483,7 @@ Radar *RSL_uf_to_radar_fp(FILE *fp)
 
 
   radar = NULL;
-  setvbuf(fp,NULL,_IOFBF,(size_t)NEW_BUFSIZ); /* Faster i/o? */
+  /* setvbuf(fp,NULL,_IOFBF,(size_t)NEW_BUFSIZ); * Faster i/o? */
   if (fread(magic.buf, sizeof(char), 6, fp) <= 0) return NULL;
 /*
  * Check for fortran record length delimeters, NCAR kludge.
@@ -606,8 +604,8 @@ Radar *RSL_uf_to_radar(char *infile)
   if (infile == NULL) {
     int save_fd;
     save_fd = dup(0);
-    fp = fdopen(save_fd, "r");
-  }  else if ((fp = fopen(infile, "r")) == NULL) {
+    fp = fdopen(save_fd, "rb");
+  }  else if ((fp = fopen(infile, "rb")) == NULL) {
     perror(infile);
     return radar;
   }