Library Name | MAD |
---|---|
Version #1 | 0.12.0a |
Version #2 | 0.15.0b |
CPU Architecture | x86 |
GCC Version | 4.5 |
Total Header Files | 1 |
---|---|
Total Shared Libraries | 1 |
Total Symbols / Types | 37 / 57 |
Verdict | Incompatible (45.95%) |
Severity | Count | |
---|---|---|
Added Symbols | - | 6 |
Removed Symbols | High | 2 |
Problems with Data Types | High | 0 |
Medium | 19 | |
Low | 12 | |
Problems with Symbols | High | 0 |
Medium | 0 | |
Low | 3 | |
Problems with Constants | Low | 7 |
Change | Effect | |
---|---|---|
1 | Value of member MAD_ERROR_BADDATAPTR has been changed from 564 to 565. | Applications may execute a wrong branch of code in the library and therefore change the behavior. |
2 | Value of member MAD_ERROR_BADSTEREO has been changed from 568 to 569. | Applications may execute a wrong branch of code in the library and therefore change the behavior. |
Change | Effect | |
---|---|---|
1 | Size of field stream has been changed from 60 bytes to 64 bytes. | 1) Size of the inclusive type has changed. 2) Previous accesses of applications and library functions to this field and fields at higher positions of the structure definition may be broken. |
2 | Size of field synth has been changed from 13320 bytes to 13324 bytes. | 1) Size of the inclusive type has changed. 2) Previous accesses of applications and library functions to this field may be broken. |
Change | Effect | |
---|---|---|
1 | Field options has been added at the middle position of this structural type. | 1) Size of the inclusive type has been changed. 2) Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications. |
Change | Effect | |
---|---|---|
1 | Field header has been added at the middle position of this structural type. | Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications. |
2 | Field bitrate has been removed from this type. | Applications will access incorrect memory when attempting to access this field. |
3 | Field crc_check has been removed from this type. | Applications will access incorrect memory when attempting to access this field. |
4 | Field crc_header has been removed from this type. | Applications will access incorrect memory when attempting to access this field. |
5 | Field duration has been removed from this type. | Applications will access incorrect memory when attempting to access this field. |
6 | Field emphasis has been removed from this type. | Applications will access incorrect memory when attempting to access this field. |
7 | Field flags has been removed from this type. | Applications will access incorrect memory when attempting to access this field. |
8 | Field layer has been removed from this type. | Applications will access incorrect memory when attempting to access this field. |
9 | Field mode_ext has been removed from this type. | Applications will access incorrect memory when attempting to access this field. |
10 | Field sfreq has been removed from this type. | Applications will access incorrect memory when attempting to access this field. |
Change | Effect | |
---|---|---|
1 | Field options has been added at the middle position of this structural type. | 1) Size of the inclusive type has been changed. 2) Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications. |
Change | Effect | |
---|---|---|
1 | Field phase has been added at the middle position of this structural type. | 1) Size of the inclusive type has been changed. 2) Layout of structure fields has been changed and therefore fields at higher positions of the structure definition may be incorrectly accessed by applications. |
2 | Type of field pcm has been changed from mad_synth::mad_pcm (9220 bytes) to mad_pcm (9224 bytes). | 1) This field may be incorrectly initialized or accessed by applications. 2) Size of the inclusive type has changed. |
3 | Field slot has been removed from this type. | Applications will access incorrect memory when attempting to access this field. |
Change | Effect | |
---|---|---|
1 | Name of member with value 260 has been changed from MAD_ERROR_BADSAMPLEFREQ to MAD_ERROR_BADSAMPLERATE. | Applications may execute a wrong branch of code in the library and therefore change the behavior. |
2 | Name of member with value 565 has been changed from MAD_ERROR_BADDATALEN to MAD_ERROR_BADDATAPTR. | Applications may execute a wrong branch of code in the library and therefore change the behavior. |
Change | Effect | |
---|---|---|
1 | Size of this type has been changed from 22648 bytes to 22656 bytes. | The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. |
Change | Effect | |
---|---|---|
1 | Size of this type has been changed from 48 bytes to 52 bytes. | The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. |
2 | Base type of field filter_func has been changed from mad_flow(*)(void*,mad_frame*) to mad_flow(*)(void*,mad_stream const*,mad_frame*). | Replacement of field base type may indicate a change in the semantic meaning of the field. |
3 | Base type of field header_func has been changed from mad_flow(*)(void*,mad_frame const*) to mad_flow(*)(void*,mad_header const*). | Replacement of field base type may indicate a change in the semantic meaning of the field. |
4 | Base type of field output_func has been changed from mad_flow(*)(void*,mad_frame const*,mad_pcm*) to mad_flow(*)(void*,mad_header const*,mad_pcm*). | Replacement of field base type may indicate a change in the semantic meaning of the field. |
Change | Effect | |
---|---|---|
1 | Field mode has been renamed to options. | Renaming of a field in data type may indicate a change in the semantic meaning of the field. |
Change | Effect | |
---|---|---|
1 | Size of this type has been changed from 60 bytes to 64 bytes. | The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. |
2 | Type of field main_data has been changed from unsigned char[2563] * to unsigned char[2567] *. | Replacement of the field data type may indicate a change in the semantic meaning of the field. |
Change | Effect | |
---|---|---|
1 | Size of this type has been changed from 13320 bytes to 13324 bytes. | The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. |
2 | Field polyfilter has been renamed to filter. | Renaming of a field in data type may indicate a change in the semantic meaning of the field. |
Change | Effect | |
---|---|---|
1 | Base type of 4th parameter p4 has been changed from mad_flow(*)(void*,mad_frame const*) to mad_flow(*)(void*,mad_header const*). | Replacement of parameter base type may indicate a change in its semantic meaning. |
2 | Base type of 5th parameter p5 has been changed from mad_flow(*)(void*,mad_frame*) to mad_flow(*)(void*,mad_stream const*,mad_frame*). | Replacement of parameter base type may indicate a change in its semantic meaning. |
3 | Base type of 6th parameter p6 has been changed from mad_flow(*)(void*,mad_frame const*,mad_pcm*) to mad_flow(*)(void*,mad_header const*,mad_pcm*). | Replacement of parameter base type may indicate a change in its semantic meaning. |
Change | Effect | |
---|---|---|
1 | The value of constant MAD_AUTHOR has been changed from "Robert Leslie" to "Underbit Technologies, Inc.". | Applications will pass an old value of this constant as the parameter to the new-version library functions, that expect a new one. This may result in crash of incorrect behavior of applications. |
Change | Effect | |
---|---|---|
1 | The value of constant MAD_BUFFER_GUARD has been changed from 4 to 8. | Applications will pass an old value of this constant as the parameter to the new-version library functions, that expect a new one. This may result in crash of incorrect behavior of applications. |
Change | Effect | |
---|---|---|
1 | The value of constant MAD_EMAIL has been changed from "rob@mars.org" to "info@underbit.com". | Applications will pass an old value of this constant as the parameter to the new-version library functions, that expect a new one. This may result in crash of incorrect behavior of applications. |
Change | Effect | |
---|---|---|
1 | The value of constant MAD_F_MAX has been changed from 0x7fffffffL to ((mad_fixed_t) +0x7fffffffL). | Applications will pass an old value of this constant as the parameter to the new-version library functions, that expect a new one. This may result in crash of incorrect behavior of applications. |
Change | Effect | |
---|---|---|
1 | The value of constant MAD_F_MIN has been changed from (-0x80000000L) to ((mad_fixed_t) -0x80000000L). | Applications will pass an old value of this constant as the parameter to the new-version library functions, that expect a new one. This may result in crash of incorrect behavior of applications. |
Change | Effect | |
---|---|---|
1 | The value of constant MAD_F_ONE has been changed from 0x10000000L to MAD_F(0x10000000). | Applications will pass an old value of this constant as the parameter to the new-version library functions, that expect a new one. This may result in crash of incorrect behavior of applications. |
Change | Effect | |
---|---|---|
1 | The value of constant MAD_PUBLISHYEAR has been changed from "2000" to "2000-2003". | Applications will pass an old value of this constant as the parameter to the new-version library functions, that expect a new one. This may result in crash of incorrect behavior of applications. |