diff options
author | Vitaly Novichkov <admin@wohlnet.ru> | 2018-09-04 01:28:29 +0300 |
---|---|---|
committer | Vitaly Novichkov <admin@wohlnet.ru> | 2018-09-04 01:28:29 +0300 |
commit | 9efe77035f72c0a0ee046e3b2cda0157acd2a8ca (patch) | |
tree | 6e1ef697e208386e2eabab75699c19c138ffe893 /src/wopl/wopl_file.c | |
parent | f2a62189128a508be9d5bcbc30aabc69c3112efb (diff) | |
parent | 5c9eb9c4fb736a004af31874d457a183d7a3cbe5 (diff) | |
download | libADLMIDI-9efe77035f72c0a0ee046e3b2cda0157acd2a8ca.tar.gz libADLMIDI-9efe77035f72c0a0ee046e3b2cda0157acd2a8ca.tar.bz2 libADLMIDI-9efe77035f72c0a0ee046e3b2cda0157acd2a8ca.zip |
Merge branch 'master' into stable
Diffstat (limited to 'src/wopl/wopl_file.c')
-rw-r--r-- | src/wopl/wopl_file.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/wopl/wopl_file.c b/src/wopl/wopl_file.c index 25b75be..f018cbc 100644 --- a/src/wopl/wopl_file.c +++ b/src/wopl/wopl_file.c @@ -353,6 +353,8 @@ int WOPL_LoadInstFromMem(WOPIFile *file, void *mem, size_t length) GO_FORWARD(2); } + file->version = version; + {/* is drum flag */ if(length < 1) return WOPL_ERR_UNEXPECTED_ENDING; @@ -434,11 +436,13 @@ size_t WOPL_CalculateInstFileSize(WOPIFile *file, uint16_t version) * is percussive instrument */ - if(version >= 3) - ins_size = WOPL_INST_SIZE_V3; + if(version > 2) + /* Skip sounding delays are not part of single-instrument file + * two sizes of uint16_t will be subtracted */ + ins_size = WOPL_INST_SIZE_V3 - (sizeof(uint16_t) * 2); else ins_size = WOPL_INST_SIZE_V2; - final_size += ins_size * 128; + final_size += ins_size; return final_size; } |