[Getdata-commits] SF.net SVN: getdata:[485] trunk/getdata
Scientific Database Format
Brought to you by:
ketiltrout
From: <ket...@us...> - 2010-11-27 05:36:31
|
Revision: 485 http://getdata.svn.sourceforge.net/getdata/?rev=485&view=rev Author: ketiltrout Date: 2010-11-27 05:36:23 +0000 (Sat, 27 Nov 2010) Log Message: ----------- Several indecorous memory leaks removed. Also fixed the GD_VERBOSE | GD_IGNORE_DUPS bug. Some tidying in the test suite. Modified Paths: -------------- trunk/getdata/ChangeLog trunk/getdata/src/add.c trunk/getdata/src/bzip.c trunk/getdata/src/close.c trunk/getdata/src/entry.c trunk/getdata/src/getdata.c trunk/getdata/src/include.c trunk/getdata/src/internal.h trunk/getdata/src/lzma.c trunk/getdata/src/mod.c trunk/getdata/src/move.c trunk/getdata/src/open.c trunk/getdata/src/parse.c trunk/getdata/src/putdata.c trunk/getdata/src/raw.c trunk/getdata/test/alter_crecip89.c trunk/getdata/test/alter_entry.c trunk/getdata/test/alter_entry_recode.c trunk/getdata/test/alter_entry_scalar2a.c trunk/getdata/test/alter_entry_scalar2n.c trunk/getdata/test/alter_entry_scalar3.c trunk/getdata/test/alter_entry_scalar4.c trunk/getdata/test/alter_linterp.c trunk/getdata/test/alter_polynom_coeff.c trunk/getdata/test/bzip_move_from.c trunk/getdata/test/entry_bit.c trunk/getdata/test/entry_bit_scalar.c trunk/getdata/test/entry_lincom.c trunk/getdata/test/entry_lincom_scalar.c trunk/getdata/test/entry_linterp.c trunk/getdata/test/entry_multiply.c trunk/getdata/test/entry_phase.c trunk/getdata/test/entry_phase_scalar.c trunk/getdata/test/entry_polynom.c trunk/getdata/test/entry_polynom_scalar.c trunk/getdata/test/entry_raw.c trunk/getdata/test/entry_raw_scalar.c trunk/getdata/test/entry_scalar_repr.c trunk/getdata/test/file.c trunk/getdata/test/fragment_name.c trunk/getdata/test/global_name.c trunk/getdata/test/global_ref.c trunk/getdata/test/global_ref_set.c trunk/getdata/test/gzip_move_from.c trunk/getdata/test/header_complex.c trunk/getdata/test/include_auto.c trunk/getdata/test/include_ignore.c trunk/getdata/test/include_ref.c trunk/getdata/test/move.c trunk/getdata/test/move_data_enc_ar.c trunk/getdata/test/move_data_enc_ra.c trunk/getdata/test/move_data_endian.c trunk/getdata/test/move_data_foffs.c trunk/getdata/test/move_data_nop.c trunk/getdata/test/move_index.c trunk/getdata/test/move_meta.c trunk/getdata/test/move_protect.c trunk/getdata/test/move_subdir.c trunk/getdata/test/name.c trunk/getdata/test/name_move.c trunk/getdata/test/open_nonexistent.c trunk/getdata/test/open_notdirfile.c trunk/getdata/test/parse_duplicate_ignore.c trunk/getdata/test/trunc_rofs.c Modified: trunk/getdata/ChangeLog =================================================================== --- trunk/getdata/ChangeLog 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/ChangeLog 2010-11-27 05:36:23 UTC (rev 485) @@ -1,4 +1,45 @@ -2010-11-25 D. V. Wiebe <ge...@ke...> svn:484 +2010-11-27 D. V. Wiebe <ge...@ke...> svn:485 + * test/alter_polynom_coeff.c test/include_ignore.c test/alter_entry.c + test/entry_linterp.c test/entry_multiply.c test/move_data_enc_ar.c + test/gzip_move_from.c test/include_ref.c test/global_name.c + test/entry_phase.c test/move_data_foffs.c test/entry_raw_scalar.c + test/alter_entry_scalar3.c test/move_data_endian.c test/move.c + test/entry_raw.c test/move_data_nop.c test/alter_entry_scalar4.c + test/entry_polynom_scalar.c test/move_index.c test/header_complex.c + test/alter_entry_recode.c test/entry_bit_scalar.c test/entry_scalar_repr.c + test/entry_polynom.c test/file.c test/entry_lincom.c test/name_move.c + test/fragment_name.c test/move_data_enc_ra.c test/move_protect.c + test/alter_entry_scalar2n.c test/move_subdir.c test/entry_lincom_scalar.c + test/entry_phase_scalar.c test/alter_crecip89.c test/bzip_move_from.c + test/move_meta.c test/name.c test/entry_bit.c test/alter_entry_scalar2a.c + test/alter_linterp.c test/global_ref_set.c test/global_ref.c + test/include_auto.c: Free strings. + + * test/trunc_rofs.c test/open_notdirfile.c test/open_nonexistent.c: Close + dirfiles. + + * src/entry.c (_GD_FreeE): Free LUT. + * src/open.c (_GD_CreateDirfile): Close DIR after truncation. + * src/close.c (_GD_FreeD): Free dot list. + * src/getdata.c (_GD_DoRaw) src/putdata.c (_GD_DoRawOut): Free databuffer on + error. + * src/lzma.c (_GD_LzmaSize) src/bzip.c (_GD_Bzip2Size): Close file. + * src/move.c (_GD_MogrifyFile): Free new_filebase if necessary. + * src/parse.c (_GD_ParseFieldSpec): Free entry on duplicate field name. + * src/mod.c (_GD_Change): Transfer the old file structure to the new entry + in the case of RAW fields. Don't forget to free the old CONST storage, if + necessary. + * src/include.c (gd_include): Always free ref_name. + + * src/raw.c (_GD_RawTemp): Call the right close function on error. + + * src/mod.c (gd_alter_crecip89): For some reason, intialise scalar_ind[0]. + + * src/parse.c (_GD_ParseFragment _GD_ParseFieldSpec): Handle GD_IGNORE_DUPS + inside _GD_ParseFieldSpec, which eliminates the spurious error message if + GD_VERBOSE is given. + +2010-11-26 D. V. Wiebe <ge...@ke...> svn:484 * test/ascii_get_get.c: Added. * src/ascii.c (_GD_AsciiRead): Update fp as necessary so we don't get lost. Modified: trunk/getdata/src/add.c =================================================================== --- trunk/getdata/src/add.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/src/add.c 2010-11-27 05:36:23 UTC (rev 485) @@ -557,7 +557,7 @@ /* Directive parsing is skipped -- The Field Spec parser will add the field */ if (!D->error) _GD_ParseFieldSpec(D, n_cols, in_cols, E, "dirfile_madd_spec()", 0, me, - D->standards, 1, 1, 1, &outstring, tok_pos); + D->standards, 1, GD_PEDANTIC, 1, &outstring, tok_pos); free(outstring); @@ -619,7 +619,7 @@ /* Directive parsing is skipped -- The Field Spec parser will add the field */ if (!D->error) _GD_ParseFieldSpec(D, n_cols, in_cols, NULL, "dirfile_add_spec()", 0, - fragment_index, D->standards, 1, 1, 1, &outstring, tok_pos); + fragment_index, D->standards, 1, GD_PEDANTIC, 1, &outstring, tok_pos); free(outstring); Modified: trunk/getdata/src/bzip.c =================================================================== --- trunk/getdata/src/bzip.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/src/bzip.c 2010-11-27 05:36:23 UTC (rev 485) @@ -258,10 +258,14 @@ ptr->end = n; } else { free(ptr); + BZ2_bzReadClose(&ptr->bzerror, ptr->bzfile); + fclose(ptr->stream); dreturn("%i", -1); return -1; } } + BZ2_bzReadClose(&ptr->bzerror, ptr->bzfile); + fclose(ptr->stream); off_t n = (ptr->base + ptr->end) / GD_SIZE(data_type); free(ptr); Modified: trunk/getdata/src/close.c =================================================================== --- trunk/getdata/src/close.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/src/close.c 2010-11-27 05:36:23 UTC (rev 485) @@ -44,6 +44,7 @@ } free(D->entry); + free(D->dot_list); free(D->error_string); free(D->error_file); free(D->field_list); Modified: trunk/getdata/src/entry.c =================================================================== --- trunk/getdata/src/entry.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/src/entry.c 2010-11-27 05:36:23 UTC (rev 485) @@ -49,8 +49,10 @@ case GD_LINTERP_ENTRY: free(entry->in_fields[0]); free(entry->EN(linterp,table)); - if (priv) + if (priv) { free(entry->e->u.linterp.table_path); + free(entry->e->u.linterp.lut); + } break; case GD_RECIP_ENTRY: free(entry->in_fields[0]); Modified: trunk/getdata/src/getdata.c =================================================================== --- trunk/getdata/src/getdata.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/src/getdata.c 2010-11-27 05:36:23 UTC (rev 485) @@ -293,11 +293,13 @@ /** open the file (and cache the fp) if it hasn't been opened yet. */ if (E->e->u.raw.file[0].fp < 0) { if (!_GD_Supports(D, E, GD_EF_OPEN | GD_EF_SEEK | GD_EF_READ)) { + free(databuffer); dreturn("%i", 0); return 0; } else if (_GD_SetEncodedName(D, E->e->u.raw.file, E->e->u.raw.filebase, 0)) { + free(databuffer); dreturn("%i", 0); return 0; } else if ((*_gd_ef[E->e->u.raw.file[0].encoding].open)(E->e->u.raw.file, @@ -305,6 +307,7 @@ { _GD_SetError(D, GD_E_RAW_IO, 0, E->e->u.raw.file[0].name, errno, NULL); + free(databuffer); dreturn("%i", 0); return 0; } @@ -314,6 +317,7 @@ E->EN(raw,data_type), 0) == -1) { _GD_SetError(D, GD_E_RAW_IO, 0, E->e->u.raw.file[0].name, errno, NULL); + free(databuffer); dreturn("%i", 0); return 0; } Modified: trunk/getdata/src/include.c =================================================================== --- trunk/getdata/src/include.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/src/include.c 2010-11-27 05:36:23 UTC (rev 485) @@ -239,8 +239,8 @@ ref_name); else D->reference_field = E; - free(ref_name); } + free(ref_name); dreturn("%i", new_fragment); return new_fragment; Modified: trunk/getdata/src/internal.h =================================================================== --- trunk/getdata/src/internal.h 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/src/internal.h 2010-11-27 05:36:23 UTC (rev 485) @@ -634,7 +634,7 @@ gd_type_t _GD_NativeType(DIRFILE* D, gd_entry_t* E, int repr); gd_entry_t* _GD_ParseFieldSpec(DIRFILE* D, int n_cols, char** in_cols, const gd_entry_t* P, const char* format_file, int linenum, int me, - int standards, int creat, int pedantic, int insert, char **outstring, + int standards, int creat, unsigned long flags, int insert, char **outstring, const char *tok_pos); char* _GD_ParseFragment(FILE* fp, DIRFILE *D, int me, int* standards, unsigned long int *flags); Modified: trunk/getdata/src/lzma.c =================================================================== --- trunk/getdata/src/lzma.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/src/lzma.c 2010-11-27 05:36:23 UTC (rev 485) @@ -315,10 +315,14 @@ /* seek forward the slow way to the end */ while (!ptr->stream_end) { if (_GD_LzmaDecode(ptr)) { + lzma_end(&ptr->xzfile); + fclose(ptr->stream); dreturn("%i", -1); return -1; } } + lzma_end(&ptr->xzfile); + fclose(ptr->stream); off_t n = (ptr->base + ptr->end) / GD_SIZE(data_type); free(ptr); Modified: trunk/getdata/src/mod.c =================================================================== --- trunk/getdata/src/mod.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/src/mod.c 2010-11-27 05:36:23 UTC (rev 485) @@ -392,6 +392,7 @@ _GD_SetError(D, GD_E_RAW_IO, 0, E->e->u.raw.file[0].name, errno, NULL); } + memcpy(Qe.u.raw.file, E->e->u.raw.file, sizeof(struct _gd_raw_file)); break; case GD_LINCOM_ENTRY: @@ -721,10 +722,9 @@ if (Q.EN(scalar,const_type) != E->EN(scalar,const_type)) modified = 1; - if (type == _GD_ConstType(D, E->EN(scalar,const_type))) { + if (type == _GD_ConstType(D, E->EN(scalar,const_type))) Qe.u.scalar.d = E->e->u.scalar.d; - E->e->u.scalar.d = NULL; - } else { + else { /* type convert */ Qe.u.scalar.d = malloc(GD_SIZE(type)); if (Qe.u.scalar.d == NULL) { @@ -751,6 +751,7 @@ *(uint64_t*)Qe.u.scalar.d = (E->EN(scalar,const_type) & (GD_COMPLEX | GD_IEEE754)) ? (uint64_t)*(double*)E->e->u.scalar.d : (uint64_t)*(int64_t*)E->e->u.scalar.d; + free(E->e->u.scalar.d); } break; @@ -1184,6 +1185,7 @@ N.in_fields[0] = (char *)in_field; N.scalar[0] = (cdividend[0] == 0 && cdividend[1] == 0) ? (char *)"" : NULL; _gd_a2c(N.EN(recip,cdividend), cdividend); + N.scalar_ind[0] = 0; N.comp_scal = 1; N.e = NULL; @@ -1487,7 +1489,7 @@ /* Let the parser compose the entry */ N = _GD_ParseFieldSpec(D, n_cols, in_cols, NULL, "dirfile_alter_spec()", 0, - N->fragment_index, standards, 0, 1, 0, &outstring, tok_pos); + N->fragment_index, standards, 0, GD_PEDANTIC, 0, &outstring, tok_pos); free(outstring); @@ -1554,7 +1556,7 @@ if (!D->error) /* Let the parser compose the entry */ N = _GD_ParseFieldSpec(D, n_cols, in_cols, N, "dirfile_malter_spec()", 0, - N->fragment_index, standards, 0, 1, 0, &outstring, tok_pos); + N->fragment_index, standards, 0, GD_PEDANTIC, 0, &outstring, tok_pos); free(outstring); Modified: trunk/getdata/src/move.c =================================================================== --- trunk/getdata/src/move.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/src/move.c 2010-11-27 05:36:23 UTC (rev 485) @@ -281,10 +281,10 @@ E->e->u.raw.filebase = new_filebase; } } - } + } else + free(new_filebase); if (D->error) { - free(new_filebase); dreturn("%i", -1); return -1; } Modified: trunk/getdata/src/open.c =================================================================== --- trunk/getdata/src/open.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/src/open.c 2010-11-27 05:36:23 UTC (rev 485) @@ -138,6 +138,7 @@ if (stat(fullname, &statbuf)) { _GD_SetError(D, GD_E_TRUNC, GD_E_TRUNC_STAT, fullname, errno, NULL); + closedir(dir); dreturn("%p", NULL); return NULL; } @@ -146,11 +147,14 @@ if (S_ISREG(statbuf.st_mode)) { if (unlink(fullname)) { _GD_SetError(D, GD_E_TRUNC, GD_E_TRUNC_UNLINK, fullname, errno, NULL); + closedir(dir); dreturn("%p", NULL); return NULL; } } } + + closedir(dir); } /* Create, if needed */ Modified: trunk/getdata/src/parse.c =================================================================== --- trunk/getdata/src/parse.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/src/parse.c 2010-11-27 05:36:23 UTC (rev 485) @@ -1239,16 +1239,17 @@ * specification */ gd_entry_t* _GD_ParseFieldSpec(DIRFILE* D, int n_cols, char** in_cols, const gd_entry_t* P, const char* format_file, int linenum, int me, - int standards, int creat, int pedantic, int insert, char **outstring, + int standards, int creat, unsigned long flags, int insert, char **outstring, const char *tok_pos) { gd_entry_t* E = NULL; void *ptr; char *cptr; int is_dot = 0; + const int pedantic = flags & GD_PEDANTIC; - dtrace("%p, %i, %p, %p, \"%s\", %i, %u, %i, %i, %i, %i, %p, %p", D, n_cols, - in_cols, P, format_file, linenum, me, standards, creat, pedantic, insert, + dtrace("%p, %i, %p, %p, \"%s\", %i, %i, %i, %i, %lx, %i, %p, %p", D, n_cols, + in_cols, P, format_file, linenum, me, standards, creat, flags, insert, outstring, tok_pos); /* Check for barth-style metafield definition */ @@ -1270,8 +1271,7 @@ /* point in_cols[0] to the metafield name */ in_cols[0] = cptr + 1; E = _GD_ParseFieldSpec(D, n_cols, in_cols, P, D->fragment[me].cname, - linenum, me, standards, creat, pedantic, insert, outstring, - tok_pos); + linenum, me, standards, creat, flags, insert, outstring, tok_pos); } dreturn("%p", (!insert) ? E : NULL); return (!insert) ? E : NULL; @@ -1389,8 +1389,10 @@ &u); if (Q) { - _GD_SetError(D, GD_E_FORMAT, GD_E_FORMAT_DUPLICATE, format_file, linenum, - D->fragment[Q->fragment_index].cname); + if (~flags & GD_IGNORE_DUPS) + _GD_SetError(D, GD_E_FORMAT, GD_E_FORMAT_DUPLICATE, format_file, + linenum, D->fragment[Q->fragment_index].cname); + _GD_FreeE(E, 1); dreturn("%p", NULL); return NULL; } @@ -1741,7 +1743,7 @@ linenum, NULL); else _GD_ParseFieldSpec(D, n_cols - 2, in_cols + 2, P, D->fragment[me].cname, - linenum, me, *standards, 0, pedantic, 1, outstring, tok_pos); + linenum, me, *standards, 0, *flags, 1, outstring, tok_pos); } else if (strcmp(ptr, "PROTECT") == 0 && (!pedantic || *standards >= 6)) { if (strcmp(in_cols[1], "none") == 0) D->fragment[me].protection = GD_PROTECT_NONE; @@ -1820,13 +1822,10 @@ if (D->error == GD_E_OK && !match) first_raw = _GD_ParseFieldSpec(D, n_cols, in_cols, NULL, - D->fragment[me].cname, linenum, me, *standards, 0, - *flags & GD_PEDANTIC, 1, &outstring, tok_pos); + D->fragment[me].cname, linenum, me, *standards, 0, *flags, 1, + &outstring, tok_pos); - if (*flags & GD_IGNORE_DUPS && D->error == GD_E_FORMAT && - D->suberror == GD_E_FORMAT_DUPLICATE) - _GD_ClearError(D); /* ignore this line, continue parsing */ - else if (D->error == GD_E_FORMAT) { + if (D->error == GD_E_FORMAT) { /* we guarantee a buffer size of at least GD_MAX_LINE_LENGTH */ if (n < GD_MAX_LINE_LENGTH) { char *ptr = (char *)realloc(instring, GD_MAX_LINE_LENGTH); Modified: trunk/getdata/src/putdata.c =================================================================== --- trunk/getdata/src/putdata.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/src/putdata.c 2010-11-27 05:36:23 UTC (rev 485) @@ -54,6 +54,11 @@ s0 -= D->fragment[E->fragment_index].frame_offset * E->EN(raw,spf); + if (!_GD_Supports(D, E, GD_EF_OPEN | GD_EF_SEEK | GD_EF_WRITE)) { + dreturn("%i", 0); + return 0; + } + databuffer = _GD_Alloc(D, E->EN(raw,data_type), ns); if (databuffer == NULL) { @@ -69,11 +74,6 @@ return 0; } - if (!_GD_Supports(D, E, GD_EF_OPEN | GD_EF_SEEK | GD_EF_WRITE)) { - dreturn("%i", 0); - return 0; - } - if (_gd_ef[E->e->u.raw.file[0].encoding].ecor) { /* convert to/from middle-ended doubles */ if ((E->EN(raw,data_type) == GD_FLOAT64 || E->EN(raw,data_type) == @@ -104,12 +104,14 @@ /* open file for reading / writing if not already opened */ if (_GD_SetEncodedName(D, E->e->u.raw.file, E->e->u.raw.filebase, 0)) { + free(databuffer); dreturn("%i", 0); return 0; } else if ((*_gd_ef[E->e->u.raw.file[0].encoding].open)(E->e->u.raw.file, D->flags & GD_ACCMODE, 1)) { _GD_SetError(D, GD_E_RAW_IO, 0, E->e->u.raw.file[0].name, errno, NULL); + free(databuffer); dreturn("%i", 0); return 0; } @@ -119,6 +121,7 @@ E->EN(raw,data_type), 1) == -1) { _GD_SetError(D, GD_E_RAW_IO, 0, E->e->u.raw.file[0].name, errno, NULL); + free(databuffer); dreturn("%i", 0); return 0; } Modified: trunk/getdata/src/raw.c =================================================================== --- trunk/getdata/src/raw.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/src/raw.c 2010-11-27 05:36:23 UTC (rev 485) @@ -153,7 +153,7 @@ case GD_TEMP_DESTROY: if (file[1].name != NULL) { if (file[1].fp >= 0) - if (_GD_AsciiClose(file + 1)) { + if (_GD_RawClose(file + 1)) { dreturn("%i", -1); return -1; } Modified: trunk/getdata/test/alter_crecip89.c =================================================================== --- trunk/getdata/test/alter_crecip89.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/alter_crecip89.c 2010-11-27 05:36:23 UTC (rev 485) @@ -54,6 +54,7 @@ CHECKF(E.EN(recip,cdividend)[0], div[0]); CHECKF(E.EN(recip,cdividend)[1], div[1]); CHECKS(E.in_fields[0], "phase"); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/alter_entry.c =================================================================== --- trunk/getdata/test/alter_entry.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/alter_entry.c 2010-11-27 05:36:23 UTC (rev 485) @@ -50,6 +50,7 @@ CHECKI(error, 0); CHECKI(n, 11); CHECKI(ret, 0); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/alter_entry_recode.c =================================================================== --- trunk/getdata/test/alter_entry_recode.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/alter_entry_recode.c 2010-11-27 05:36:23 UTC (rev 485) @@ -66,6 +66,7 @@ CHECKI(error, 0); CHECKI(n, 32); CHECKI(ret, 0); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/alter_entry_scalar2a.c =================================================================== --- trunk/getdata/test/alter_entry_scalar2a.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/alter_entry_scalar2a.c 2010-11-27 05:36:23 UTC (rev 485) @@ -45,6 +45,7 @@ CHECKI(n, 0); CHECKI(ret, 0); CHECKI(E.EN(bit,bitnum), 11); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/alter_entry_scalar2n.c =================================================================== --- trunk/getdata/test/alter_entry_scalar2n.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/alter_entry_scalar2n.c 2010-11-27 05:36:23 UTC (rev 485) @@ -53,6 +53,7 @@ CHECKI(n, 0); CHECKI(ret, 0); CHECKI(E.EN(raw,spf), 11); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/alter_entry_scalar3.c =================================================================== --- trunk/getdata/test/alter_entry_scalar3.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/alter_entry_scalar3.c 2010-11-27 05:36:23 UTC (rev 485) @@ -44,6 +44,7 @@ CHECKI(ret,0); CHECKI(E.EN(bit,bitnum), 3); CHECKP(E.scalar[0]); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/alter_entry_scalar4.c =================================================================== --- trunk/getdata/test/alter_entry_scalar4.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/alter_entry_scalar4.c 2010-11-27 05:36:23 UTC (rev 485) @@ -45,6 +45,7 @@ CHECKI(ret, 0); CHECKI(E.EN(bit,numbits), 11); CHECKP(E.scalar[1]); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/alter_linterp.c =================================================================== --- trunk/getdata/test/alter_linterp.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/alter_linterp.c 2010-11-27 05:36:23 UTC (rev 485) @@ -72,6 +72,7 @@ CHECKI(error2, 0); CHECKS(e.in_fields[0], "data"); CHECKS(e.EN(linterp,table), "table1"); + gd_free_entry_strings(&e); return r; } Modified: trunk/getdata/test/alter_polynom_coeff.c =================================================================== --- trunk/getdata/test/alter_polynom_coeff.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/alter_polynom_coeff.c 2010-11-27 05:36:23 UTC (rev 485) @@ -64,6 +64,7 @@ CHECKI(error2,0); CHECKI(n,0); CHECKI(ret,0); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/bzip_move_from.c =================================================================== --- trunk/getdata/test/bzip_move_from.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/bzip_move_from.c 2010-11-27 05:36:23 UTC (rev 485) @@ -100,6 +100,7 @@ CHECKI(unlink_data, -1); CHECKI(unlink_bz2data, 0); #endif + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/entry_bit.c =================================================================== --- trunk/getdata/test/entry_bit.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/entry_bit.c 2010-11-27 05:36:23 UTC (rev 485) @@ -42,6 +42,7 @@ CHECKI(E.EN(bit,numbits), 4); CHECKP(E.scalar[0]); CHECKP(E.scalar[1]); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/entry_bit_scalar.c =================================================================== --- trunk/getdata/test/entry_bit_scalar.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/entry_bit_scalar.c 2010-11-27 05:36:23 UTC (rev 485) @@ -43,6 +43,7 @@ CHECKS(E.in_fields[0], "in1"); CHECKI(E.EN(bit,bitnum), 3); CHECKI(E.EN(bit,numbits), 4); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/entry_lincom.c =================================================================== --- trunk/getdata/test/entry_lincom.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/entry_lincom.c 2010-11-27 05:36:23 UTC (rev 485) @@ -48,6 +48,7 @@ CHECKF(E.EN(lincom,b)[1], 4.); CHECKF(E.EN(lincom,m)[2], 5.); CHECKF(E.EN(lincom,b)[2], 6.); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/entry_lincom_scalar.c =================================================================== --- trunk/getdata/test/entry_lincom_scalar.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/entry_lincom_scalar.c 2010-11-27 05:36:23 UTC (rev 485) @@ -61,6 +61,7 @@ CHECKF(E.EN(lincom,b)[1], 4.); CHECKF(E.EN(lincom,m)[2], 5.); CHECKF(E.EN(lincom,b)[2], 6.); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/entry_linterp.c =================================================================== --- trunk/getdata/test/entry_linterp.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/entry_linterp.c 2010-11-27 05:36:23 UTC (rev 485) @@ -38,6 +38,7 @@ CHECKI(E.field_type, GD_LINTERP_ENTRY); CHECKS(E.in_fields[0], "in1"); CHECKS(E.EN(linterp,table), "../tablefile"); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/entry_multiply.c =================================================================== --- trunk/getdata/test/entry_multiply.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/entry_multiply.c 2010-11-27 05:36:23 UTC (rev 485) @@ -38,6 +38,7 @@ CHECKX(E.field_type, GD_MULTIPLY_ENTRY); CHECKS(E.in_fields[0], "in1"); CHECKS(E.in_fields[1], "in2"); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/entry_phase.c =================================================================== --- trunk/getdata/test/entry_phase.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/entry_phase.c 2010-11-27 05:36:23 UTC (rev 485) @@ -38,6 +38,7 @@ CHECKX(E.field_type, GD_PHASE_ENTRY); CHECKS(E.in_fields[0], "in1"); CHECKI(E.EN(phase,shift), 3); + gd_free_entry_strings(&E); return 0; } Modified: trunk/getdata/test/entry_phase_scalar.c =================================================================== --- trunk/getdata/test/entry_phase_scalar.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/entry_phase_scalar.c 2010-11-27 05:36:23 UTC (rev 485) @@ -40,6 +40,7 @@ CHECKS(E.in_fields[0], "in1"); CHECKS(E.scalar[0], "shift"); CHECKI(E.EN(phase,shift), 3); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/entry_polynom.c =================================================================== --- trunk/getdata/test/entry_polynom.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/entry_polynom.c 2010-11-27 05:36:23 UTC (rev 485) @@ -42,6 +42,7 @@ CHECKS(E.in_fields[0], "in"); for (fd = 0; fd < 4; ++fd) CHECKFi(fd,E.EN(polynom,a)[fd], fd + 1.); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/entry_polynom_scalar.c =================================================================== --- trunk/getdata/test/entry_polynom_scalar.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/entry_polynom_scalar.c 2010-11-27 05:36:23 UTC (rev 485) @@ -54,6 +54,7 @@ CHECKS(E.scalar[4], "a4"); for (fd = 0; fd < 4; ++fd) CHECKFi(fd,E.EN(polynom,a)[fd], fd + 1.); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/entry_raw.c =================================================================== --- trunk/getdata/test/entry_raw.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/entry_raw.c 2010-11-27 05:36:23 UTC (rev 485) @@ -38,6 +38,7 @@ CHECKI(E.field_type, GD_RAW_ENTRY); CHECKU(E.EN(raw,spf), 8); CHECKX(E.EN(raw,data_type), GD_UINT8); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/entry_raw_scalar.c =================================================================== --- trunk/getdata/test/entry_raw_scalar.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/entry_raw_scalar.c 2010-11-27 05:36:23 UTC (rev 485) @@ -40,6 +40,7 @@ CHECKS(E.scalar[0], "const"); CHECKU(E.EN(raw,spf), 8); CHECKX(E.EN(raw,data_type), GD_UINT8); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/entry_scalar_repr.c =================================================================== --- trunk/getdata/test/entry_scalar_repr.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/entry_scalar_repr.c 2010-11-27 05:36:23 UTC (rev 485) @@ -47,6 +47,7 @@ CHECKS(E.scalar[GD_MAX_LINCOM], "b1.i"); CHECKF(E.EN(lincom,m)[0], 1.1); CHECKF(E.EN(lincom,b)[0], 9.3); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/file.c =================================================================== --- trunk/getdata/test/file.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/file.c 2010-11-27 05:36:23 UTC (rev 485) @@ -43,6 +43,7 @@ CHECKI(error, 0); CHECKS(path, __TEST__ "dirfile/data"); + free(path); return r; } Modified: trunk/getdata/test/fragment_name.c =================================================================== --- trunk/getdata/test/fragment_name.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/fragment_name.c 2010-11-27 05:36:23 UTC (rev 485) @@ -43,6 +43,8 @@ CHECKS(form0, __TEST__ "dirfile/format"); CHECKS(form1, __TEST__ "dirfile/format1"); + free(form0); + free(form1); return r; } Modified: trunk/getdata/test/global_name.c =================================================================== --- trunk/getdata/test/global_name.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/global_name.c 2010-11-27 05:36:23 UTC (rev 485) @@ -34,6 +34,7 @@ CHECKI(error, GD_E_OK); CHECKS(name, filedir); + free(name); return r; } Modified: trunk/getdata/test/global_ref.c =================================================================== --- trunk/getdata/test/global_ref.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/global_ref.c 2010-11-27 05:36:23 UTC (rev 485) @@ -34,6 +34,7 @@ CHECKI(error, 0); CHECKS(ref, "data"); + free(ref); return r; } Modified: trunk/getdata/test/global_ref_set.c =================================================================== --- trunk/getdata/test/global_ref_set.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/global_ref_set.c 2010-11-27 05:36:23 UTC (rev 485) @@ -35,6 +35,7 @@ CHECKI(error, GD_E_OK); CHECKS(ref, "data2"); + free(ref); return r; } Modified: trunk/getdata/test/gzip_move_from.c =================================================================== --- trunk/getdata/test/gzip_move_from.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/gzip_move_from.c 2010-11-27 05:36:23 UTC (rev 485) @@ -100,6 +100,7 @@ CHECKI(unlink_data, -1); CHECKI(unlink_gzdata, 0); #endif + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/header_complex.c =================================================================== --- trunk/getdata/test/header_complex.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/header_complex.c 2010-11-27 05:36:23 UTC (rev 485) @@ -41,7 +41,6 @@ CHECKFi(0,E.EN(lincom,cm)[1][1], 8.8); CHECKFi(0,E.EN(lincom,cb)[1][0], 9.9); CHECKFi(0,E.EN(lincom,cb)[1][1], 1.1); - gd_free_entry_strings(&E); const double ca[] = { 2.1, 3.2, 4.3, 5.4, 6.5, 7.6 }; @@ -62,6 +61,7 @@ CHECKFi(1,E.EN(polynom,ca)[1][1], ca[3]); CHECKFi(1,E.EN(polynom,ca)[2][0], ca[4]); CHECKFi(1,E.EN(polynom,ca)[2][1], ca[5]); + gd_free_entry_strings(&E); gd_close(D); Modified: trunk/getdata/test/include_auto.c =================================================================== --- trunk/getdata/test/include_auto.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/include_auto.c 2010-11-27 05:36:23 UTC (rev 485) @@ -47,6 +47,7 @@ CHECKPN(ptr); CHECKS(reference, "data"); CHECKU(spf, 11); + free(reference); return r; } Modified: trunk/getdata/test/include_ignore.c =================================================================== --- trunk/getdata/test/include_ignore.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/include_ignore.c 2010-11-27 05:36:23 UTC (rev 485) @@ -45,6 +45,7 @@ CHECKI(error2, 0); CHECKS(reference, "data1"); CHECKU(spf, 11); + free(reference); return r; } Modified: trunk/getdata/test/include_ref.c =================================================================== --- trunk/getdata/test/include_ref.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/include_ref.c 2010-11-27 05:36:23 UTC (rev 485) @@ -45,6 +45,7 @@ CHECKI(error2, 0); CHECKS(reference, "data"); CHECKU(spf, 11); + free(reference); return r; } Modified: trunk/getdata/test/move.c =================================================================== --- trunk/getdata/test/move.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/move.c 2010-11-27 05:36:23 UTC (rev 485) @@ -44,6 +44,7 @@ CHECKI(error, GD_E_OK); CHECKI(ge_ret, 0); CHECKI(E.fragment_index, 1); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/move_data_enc_ar.c =================================================================== --- trunk/getdata/test/move_data_enc_ar.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/move_data_enc_ar.c 2010-11-27 05:36:23 UTC (rev 485) @@ -74,6 +74,7 @@ CHECKI(E.fragment_index, 1); CHECKI(unlink_data, 0); CHECKI(unlink_txtdata, -1); + gd_free_entry_strings(&E); return 0; } Modified: trunk/getdata/test/move_data_enc_ra.c =================================================================== --- trunk/getdata/test/move_data_enc_ra.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/move_data_enc_ra.c 2010-11-27 05:36:23 UTC (rev 485) @@ -79,6 +79,7 @@ CHECKI(E.fragment_index, 1); CHECKI(unlink_data, -1); CHECKI(unlink_txtdata, 0); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/move_data_endian.c =================================================================== --- trunk/getdata/test/move_data_endian.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/move_data_endian.c 2010-11-27 05:36:23 UTC (rev 485) @@ -69,6 +69,7 @@ CHECKI(error, GD_E_OK); CHECKI(ge_ret, 0); CHECKI(E.fragment_index, 1); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/move_data_foffs.c =================================================================== --- trunk/getdata/test/move_data_foffs.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/move_data_foffs.c 2010-11-27 05:36:23 UTC (rev 485) @@ -63,6 +63,7 @@ CHECKI(error, GD_E_OK); CHECKI(ge_ret, 0); CHECKI(E.fragment_index, 1); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/move_data_nop.c =================================================================== --- trunk/getdata/test/move_data_nop.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/move_data_nop.c 2010-11-27 05:36:23 UTC (rev 485) @@ -54,6 +54,7 @@ CHECKI(error, GD_E_OK); CHECKI(ge_ret, 0); CHECKI(E.fragment_index, 1); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/move_index.c =================================================================== --- trunk/getdata/test/move_index.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/move_index.c 2010-11-27 05:36:23 UTC (rev 485) @@ -44,6 +44,7 @@ CHECKI(error, GD_E_BAD_INDEX); CHECKI(ge_ret, 0); CHECKI(E.fragment_index, 0); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/move_meta.c =================================================================== --- trunk/getdata/test/move_meta.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/move_meta.c 2010-11-27 05:36:23 UTC (rev 485) @@ -45,6 +45,7 @@ CHECKI(error, GD_E_OK); CHECKI(ge_ret, 0); CHECKI(E.fragment_index, 1); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/move_protect.c =================================================================== --- trunk/getdata/test/move_protect.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/move_protect.c 2010-11-27 05:36:23 UTC (rev 485) @@ -44,6 +44,7 @@ CHECKI(error, GD_E_PROTECTED); CHECKI(ge_ret, 0); CHECKI(E.fragment_index, 0); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/move_subdir.c =================================================================== --- trunk/getdata/test/move_subdir.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/move_subdir.c 2010-11-27 05:36:23 UTC (rev 485) @@ -57,6 +57,7 @@ CHECKI(E.fragment_index, 1); CHECKI(unlink_data, -1); CHECKI(unlink_new_data, 0); + gd_free_entry_strings(&E); return r; } Modified: trunk/getdata/test/name.c =================================================================== --- trunk/getdata/test/name.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/name.c 2010-11-27 05:36:23 UTC (rev 485) @@ -61,6 +61,10 @@ CHECKS(field_list[3], "zata"); CHECKI(unlink_data, 0); CHECKI(unlink_zata, -1); + free(field_list[0]); + free(field_list[1]); + free(field_list[2]); + free(field_list[3]); return r; } Modified: trunk/getdata/test/name_move.c =================================================================== --- trunk/getdata/test/name_move.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/name_move.c 2010-11-27 05:36:23 UTC (rev 485) @@ -61,6 +61,10 @@ CHECKS(field_list[3], "zata"); CHECKI(unlink_data, -1); CHECKI(unlink_zata, 0); + free(field_list[0]); + free(field_list[1]); + free(field_list[2]); + free(field_list[3]); return r; } Modified: trunk/getdata/test/open_nonexistent.c =================================================================== --- trunk/getdata/test/open_nonexistent.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/open_nonexistent.c 2010-11-27 05:36:23 UTC (rev 485) @@ -8,6 +8,7 @@ int error = gd_error(D); CHECKI(error, GD_E_OPEN); + gd_discard(D); return r; } Modified: trunk/getdata/test/open_notdirfile.c =================================================================== --- trunk/getdata/test/open_notdirfile.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/open_notdirfile.c 2010-11-27 05:36:23 UTC (rev 485) @@ -20,6 +20,7 @@ rmdir(filedir); int error = gd_error(D); CHECKI(error, GD_E_OPEN); + gd_discard(D); return r; } Modified: trunk/getdata/test/parse_duplicate_ignore.c =================================================================== --- trunk/getdata/test/parse_duplicate_ignore.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/parse_duplicate_ignore.c 2010-11-27 05:36:23 UTC (rev 485) @@ -22,7 +22,7 @@ write(fd, format_data, strlen(format_data)); close(fd); - DIRFILE* D = gd_open(filedir, GD_RDONLY | GD_IGNORE_DUPS); + DIRFILE* D = gd_open(filedir, GD_RDONLY | GD_IGNORE_DUPS | GD_VERBOSE); int error = gd_error(D); gd_close(D); Modified: trunk/getdata/test/trunc_rofs.c =================================================================== --- trunk/getdata/test/trunc_rofs.c 2010-11-27 02:20:05 UTC (rev 484) +++ trunk/getdata/test/trunc_rofs.c 2010-11-27 05:36:23 UTC (rev 485) @@ -26,12 +26,13 @@ } DIRFILE* D = gd_open(filedir, GD_RDWR | GD_TRUNC); + int error = gd_error(D); + gd_discard(D); chmod(filedir, 0777); unlink(format); rmdir(filedir); - int error = gd_error(D); CHECKI(error, GD_E_TRUNC); return r; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |