diff options
author | Alexandre Marie <alexandre.marie@synchrotron-soleil.fr> | 2018-12-17 12:28:24 +0100 |
---|---|---|
committer | Alexandre Marie <alexandre.marie@synchrotron-soleil.fr> | 2018-12-17 12:28:24 +0100 |
commit | cebdc9244c019224846cb8d2668080fe386a6adc (patch) | |
tree | aedec55da0f9dd4fc4d6c7eb0f58489a956e2e8c /silx/io/specfile/src/sfinit.c | |
parent | 159ef14fb9e198bb0066ea14e6b980f065de63dd (diff) |
New upstream version 0.9.0+dfsg
Diffstat (limited to 'silx/io/specfile/src/sfinit.c')
-rw-r--r-- | silx/io/specfile/src/sfinit.c | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/silx/io/specfile/src/sfinit.c b/silx/io/specfile/src/sfinit.c index 7291427..ca2fa7f 100644 --- a/silx/io/specfile/src/sfinit.c +++ b/silx/io/specfile/src/sfinit.c @@ -1,5 +1,5 @@ # /*########################################################################## -# Copyright (C) 1995-2017 European Synchrotron Radiation Facility +# Copyright (C) 1995-2018 European Synchrotron Radiation Facility # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -521,11 +521,12 @@ sfReadFile(SpecFile *sf,SfCursor *cursor,int *error) { free(buffer); sf->no_scans = cursor->scanno; - /* - * Save last - */ - sfSaveScan(sf,cursor,error); - + if (sf->no_scans > 0) { + /* + * Save last + */ + sfSaveScan(sf,cursor,error); + } return; } @@ -790,24 +791,21 @@ sfSaveScan(SpecFile *sf, SfCursor *cursor,int *error) { static void sfAssignScanNumbers(SpecFile *sf) { - int size,i; - char *buffer,*ptr; - - char buffer2[50]; + int i; + char *ptr; + char buffer[50]; + char buffer2[50]; register ObjectList *object, *object2; SpecScan *scan, *scan2; - size = 50; - buffer = (char *) malloc(size); - for ( object = (sf->list).first; object; object=object->next) { scan = (SpecScan *) object->contents; lseek(sf->fd,scan->offset,SEEK_SET); - read(sf->fd,buffer,size); + read(sf->fd,buffer,sizeof(buffer)); buffer[49] = '\0'; for ( ptr = buffer+3,i=0; *ptr != ' ';ptr++,i++) buffer2[i] = *ptr; |