Community Packages

Please read this before reporting a bug:
http://wiki.archlinux.org/index.php/Reporting_Bug_Guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#70673 - [kid3] segfaults on opening m4a files due to ABI break in libmp4v2

Attached to Project: Community Packages
Opened by M Henning (drawoc) - Saturday, 01 May 2021, 22:24 GMT
Last edited by Antonio Rojas (arojas) - Sunday, 02 May 2021, 08:29 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Jaroslav Lichtblau (Dragonlord)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

I've been seeing segfaults when opening m4a files with kid3. I have `kid3 3.8.6-1` and `libmp4v2 4.1.4-1` installed.

The top of the gdb backtrace looks something like:
```
Thread 1 "kid3" received signal SIGSEGV, Segmentation fault.
0x0000555555574010 in ?? ()
(gdb) bt
#0 0x0000555555574010 in ()
#1 0x00007fffd04f5f86 in () at /usr/lib/libmp4v2.so.2
#2 0x00007fffd04f8e59 in () at /usr/lib/libmp4v2.so.2
#3 0x00007fffd04f9d29 in () at /usr/lib/libmp4v2.so.2
#4 0x00007fffd04eec57 in MP4Read () at /usr/lib/libmp4v2.so.2
#5 0x00007fffd05e38e8 in () at /usr/lib/kid3/plugins/libmp4v2metadata.so
#6 0x00007ffff79c554c in FileProxyModel::readTagsFromTaggedFile(TaggedFile*) () at /usr/lib/kid3/libkid3-core.so
#7 0x00007ffff79f56bb in TaggedFileSelection::addTaggedFile(TaggedFile*) () at /usr/lib/kid3/libkid3-core.so
#8 0x00007ffff79d5115 in Kid3Application::addTaggedFilesToSelection(QList<QPersistentModelIndex> const&, bool) () at /usr/lib/kid3/libkid3-core.so
#9 0x00007ffff79d9087 in Kid3Application::selectedTagsToFrameModels(QItemSelection const&) () at /usr/lib/kid3/libkid3-core.so
#10 0x00007ffff7f6e83e in BaseMainWindowImpl::applySelectionChange(QItemSelection const&, QItemSelection const&) () at /usr/lib/kid3/libkid3-gui.so
```

I think this is a result of libmp4v2 upstream breaking the ABI of `MP4Read` in this commit: https://github.com/TechSmith/mp4v2/commit/263719465a1c1fbe6d240b8d154da71003ce3230

(adding a parameter with a default value breaks ABI in C++).

Rebuilding kid3 is enough to fix this issue for me. (I guess upstream should have bumped the soname.) Other packages that depend on libmp4v2 might also need to be rebuilt.
This task depends upon

Closed by  Antonio Rojas (arojas)
Sunday, 02 May 2021, 08:29 GMT
Reason for closing:  Fixed
Additional comments about closing:  kid3 3.8.6-2

Loading...