X-Git-Url: http://gitweb.scilab.org/?p=scilab.git;a=blobdiff_plain;f=scilab%2Fmodules%2Ffileio%2Fsci_gateway%2Fc%2Fsci_fscanfMat.c;h=12ec0743e3fac6012abe1053a71e1684f346f990;hp=9135e34316e7ff8af1c837bbc5fdb180fac9b5f8;hb=aee5a995c4d80cf0681285ae8aace3c83b9ef350;hpb=73996f9540ffb50b139ae6949c2514fb927b019f diff --git a/scilab/modules/fileio/sci_gateway/c/sci_fscanfMat.c b/scilab/modules/fileio/sci_gateway/c/sci_fscanfMat.c index 9135e34..12ec074 100644 --- a/scilab/modules/fileio/sci_gateway/c/sci_fscanfMat.c +++ b/scilab/modules/fileio/sci_gateway/c/sci_fscanfMat.c @@ -154,13 +154,15 @@ int sci_fscanfMat(char *fname, void* pvApiCtx) for (i = 0; i < NB_DEFAULT_SUPPORTED_SEPARATORS; i++) { + if (results) + { + freeFscanfMatResult(results); + } results = fscanfMat(expandedFilename, Format, supportedSeparators[i]); if (results && results->err == FSCANFMAT_NO_ERROR) { break; } - - freeFscanfMatResult(results); } } else @@ -169,6 +171,7 @@ int sci_fscanfMat(char *fname, void* pvApiCtx) if (results && results->err != FSCANFMAT_NO_ERROR) { freeFscanfMatResult(results); + results = NULL; } }