prepare for the release of rrdtool-1.2.8
[rrdtool.git] / src / rrd_open.c
index c925716..6f7def1 100644 (file)
@@ -1,5 +1,5 @@
 /*****************************************************************************
- * RRDtool 1.2.1  Copyright by Tobi Oetiker, 1997-2005
+ * RRDtool 1.2.8  Copyright by Tobi Oetiker, 1997-2005
  *****************************************************************************
  * rrd_open.c  Open an RRD File
  *****************************************************************************
@@ -101,11 +101,17 @@ rrd_open(const char *file_name, FILE **in_file, rrd_t *rrd, int rdwr)
     if ((MYVAR = malloc(sizeof(MYVART) * MYCNT)) == NULL) {\
        rrd_set_error("" #MYVAR " malloc"); \
         fclose(*in_file); \
-    return (-1); } \
+        return (-1); } \
     fread(MYVAR,sizeof(MYVART),MYCNT, *in_file); 
 
 
     MYFREAD(rrd->stat_head, stat_head_t,  1)
+    /* lets see if the first read worked */
+    if (ferror( *in_file )){
+       rrd_set_error("reading the cookie off %s faild",file_name);
+       fclose(*in_file);
+       return(-1);
+    }  
     version = atoi(rrd->stat_head->version);
 
        /* lets do some test if we are on track ... */