IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Jun 25, 2015, 10:41:05 PM (11 years ago)
Author:
eugene
Message:

merge changes from branches/eam_branches/ipp-20150616

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Ohana/src/libfits/header/F_write_H.c

    r27435 r38553  
    55int gfits_write_header (char *filename, Header *header) {
    66
    7   FILE *f;
    8   off_t Nbytes;
    9   int status;
    10  
    11   status = TRUE;
     7  FILE *f = fopen (filename, "w");
     8  if (!f) return (FALSE);
    129
    13   f = fopen (filename, "w");
    14   if (f == (FILE *) NULL) return (FALSE);
    15 
    16   Nbytes = fwrite (header[0].buffer, sizeof(char), header[0].datasize, f);
    17 
    18   if (Nbytes != header[0].datasize) {
    19     status = FALSE;
    20   }
    21 
     10  int status = gfits_fwrite_header (f, header);
    2211  fclose (f);
    2312
     
    2918
    3019  off_t Nbytes;
    31   int status;
    32  
    33   status = TRUE;
     20
     21# ifdef OHANA_MEMORY 
     22  { // check memory before writing:
     23    // memblock of supplied pointer
     24    OhanaMemblock *myBlock = (OhanaMemblock *) header[0].buffer - 1;
     25    myAssert (myBlock->startblock == OHANA_MEMMAGIC, "bad memory");
     26    myAssert (myBlock->endblock == OHANA_MEMMAGIC, "bad memory");
     27    myAssert (myBlock->size >= header[0].datasize, "overflow");
     28  }
     29# endif
    3430
    3531  Nbytes = fwrite (header[0].buffer, sizeof(char), header[0].datasize, f);
    36 
    37   if (Nbytes != header[0].datasize) {
    38     status = FALSE;
     32  if (Nbytes != header[0].datasize) {
     33    perror ("fwrite: ");
     34    return FALSE;
    3935  }
    40 
    41   return (status);
     36  return TRUE;
    4237}       
    4338
    4439
    4540int gfits_fwrite_header (FILE *f, Header *header) {
    46 
    47   int status;
    48   status = gfits_save_header (f, header);
     41  int status = gfits_save_header (f, header);
    4942  return (status);
    5043}
Note: See TracChangeset for help on using the changeset viewer.