projects
/
goodguy
/
history.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
ffmpeg api3 upgrade, rework bs filts, rm faac/d, fixes
[goodguy/history.git]
/
cinelerra-5.1
/
cinelerra
/
indexfile.C
diff --git
a/cinelerra-5.1/cinelerra/indexfile.C
b/cinelerra-5.1/cinelerra/indexfile.C
index b62379b2c71108630c1d5f23fb33464da23c7462..a5f12bcaaa1dda0272fbe9da5a485a172c82b4d3 100644
(file)
--- a/
cinelerra-5.1/cinelerra/indexfile.C
+++ b/
cinelerra-5.1/cinelerra/indexfile.C
@@
-866,16
+866,19
@@
int IndexFile::read_info(Indexable *test_indexable)
// Read the file format & index state.
if(test_indexable->is_asset)
{
// Read the file format & index state.
if(test_indexable->is_asset)
{
- Asset *asset = (Asset*)test_indexable;
+ Asset *test_asset = (Asset *)test_indexable;
+ Asset *asset = new Asset;
asset->read(&xml);
asset->read(&xml);
-
+ int ret = 0;
//printf("IndexFile::read_info %d %f\n", __LINE__, asset->get_frame_rate());
//printf("IndexFile::read_info %d %f\n", __LINE__, asset->get_frame_rate());
- if(
asset->format == FILE_UNKNOWN)
- {
+ if(
asset->format == FILE_UNKNOWN ||
+
test_asset->format != asset->format )
{
if(debug) printf("IndexFile::read_info %d\n", __LINE__);
if(debug) printf("IndexFile::read_info %d\n", __LINE__);
- ret
urn
1;
+ ret
=
1;
}
}
+ asset->remove_user();
+ if( ret ) return ret;
}
else
{
}
else
{