search for: flac__metadata_object_delete

Displaying 6 results from an estimated 6 matches for "flac__metadata_object_delete".

2008 May 09
1
FLAC__metadata_get_picture()
...amp; 315 obj->data.picture.colors <= max_colors && 316 (area > max_area_seen || (area == max_area_seen && obj->data.picture.depth > max_depth_seen)) 317 ) { 318 if(*picture) 319 FLAC__metadata_object_delete(*picture); 320 *picture = obj; // <------- HERE 321 max_area_seen = area; 322 max_depth_seen = obj->data.picture.depth; 323 } 324 else { 325 FLAC__metadata_object_delete(obj); 326...
2015 Jun 28
2
about libFLAC/metadata_object.c
There are two functions: static void vorbiscomment_entry_array_delete_(FLAC__StreamMetadata_VorbisComment_Entry *object_array, unsigned num_comments); and static void cuesheet_track_array_delete_(FLAC__StreamMetadata_CueSheet_Track *object_array, unsigned num_tracks); which first dereference object_array and only then check it for NULL: free(object_array[i].indices);
2006 Sep 06
1
FLAC__metadata_simple_iterator_set_block corrupting Flac (ogg) stream?
...ears to be embedded an Ogg stream. This particular file also has ID3 headers at the beginning, but I was planning on ignoring those and fixing them up using some ID3 code later on ... Now, to read the comments is quite simple: FLAC__metadata_get_tags(fileName, &tagData); ... .. . FLAC__metadata_object_delete(tagData); For writing to the file, however, I do something along the following lines (error code stripped out to keep things shorter), this is pretty much as the flac documentation suggests: result = FLAC__metadata_simple_iterator_init(iterator, fileName, FALSE, FALSE); /**...
2008 May 19
1
Memory leaks due to Metadata object vorbis comment API ???
...err, "encoding: %s\n", ok? "succeeded" : "FAILED"); > fprintf(stderr, " state: %s\n", > FLAC__StreamEncoderStateString[FLAC__stream_encoder_get_state(encoder)]); > > /* now that encoding is finished, the metadata can be freed */ > FLAC__metadata_object_delete(metadata[0]); > FLAC__metadata_object_delete(metadata[1]); > FLAC__stream_encoder_delete(encoder); > > fclose(fin); > > return 0; > } > > void progress_callback(const FLAC__StreamEncoder *encoder, FLAC__uint64 > bytes_written, FLAC__uint64 samples_writt...
2010 Mar 08
0
Difficulties in add cover art to FLAC file
...iterator)) ; const char *violation; if( !FLAC__metadata_object_picture_is_legal(picture, &violation)) printf( "Illegal Picture: %s", violation ); if(!FLAC__metadata_iterator_insert_block_after(iterator, picture)) { printf(L" ERROR: adding new PICTURE block to metadata"); FLAC__metadata_object_delete(picture); } FLAC__metadata_iterator_delete(iterator); FLAC__metadata_chain_sort_padding(chain); if(!FLAC__metadata_chain_write(chain, true, false )) { const FLAC__Metadata_ChainStatus status = FLAC__metadata_chain_status(chain); printf( "Fail to write: %d", status ); } FLAC__metadata...
2013 Jul 09
0
Slight memory leak or bad documentation
...get_block(iterator_));"), if one does not delete this pointer, the program leaks memory (see attached example, run it through valgrind). However the documentation for get_block() only refers to the C API function FLAC__metadata_iterator_get_block(), which expilicitly states: "Do not call FLAC__metadata_object_delete() on the returned object". I don't see an easy way to change get_block() to return a pointer which wouldn't require deleting (as the underlying C function doesn't return a pointer to a C++ object), so I think the documentation for the FLAC++ API should be changed to say that the u...