beta1 bug


Ed: The attached C program creates a netcdf4_classic file that is unreadable (ncdump'ing it gives an 'HDF Error').

-Jeff

--
Jeffrey S. Whitaker         Phone  : (303)497-6313
Meteorologist               FAX    : (303)497-6449
NOAA/OAR/PSD  R/PSD1        Email  : Jeffrey.S.Whitaker@xxxxxxxx
325 Broadway                Office : Skaggs Research Cntr 1D-124
Boulder, CO, USA 80303-3328 Web    : http://tinyurl.com/5telg

#include <stdio.h>
#include <string.h>
#include <netcdf.h>
#define FILENAME "testfile.nc"
#define ATT1 "foo"
#define ATT2 "bar"
#define LONG_NAME "attribute"
#define ATT3 "long_name"
#define ERR(e) {printf("Error: %s\n", nc_strerror(e)); return 2;}
int
main()
{
       int ncid, retval, att;

       if ((retval = nc_set_default_format(NC_FORMAT_NETCDF4_CLASSIC, NULL))) 
ERR(retval);

       if ((retval = nc_create(FILENAME, NC_CLOBBER, &ncid))) ERR(retval);
       if ((retval = nc_enddef(ncid))) ERR(retval);

       att = 1;

       if ((retval = nc_redef(ncid))) ERR(retval);
       if ((retval = nc_put_att(ncid, NC_GLOBAL, ATT1, NC_INT, 1, &att))) 
ERR(retval);
       if ((retval = nc_enddef(ncid))) ERR(retval);

       att = 2;

       if ((retval = nc_redef(ncid))) ERR(retval);
       if ((retval = nc_put_att(ncid, NC_GLOBAL, ATT2, NC_INT, 1, &att))) 
ERR(retval);
       if ((retval = nc_enddef(ncid))) ERR(retval);

       if ((retval = nc_redef(ncid))) ERR(retval);
       if ((retval = nc_put_att_text(ncid, NC_GLOBAL, ATT3, strlen(LONG_NAME), 
LONG_NAME))) ERR(retval);
       if ((retval = nc_enddef(ncid))) ERR(retval);

       if ((retval = nc_close(ncid))) ERR(retval);
}