Summary: | Conflicting symbol between json-c and glib can break clients | ||
---|---|---|---|
Product: | PulseAudio | Reporter: | Ahmed S. Darwish <darwish.07> |
Component: | daemon | Assignee: | pulseaudio-bugs |
Status: | RESOLVED FIXED | QA Contact: | pulseaudio-bugs |
Severity: | blocker | ||
Priority: | medium | CC: | lennart |
Version: | unspecified | ||
Hardware: | x86-64 (AMD64) | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
Ahmed S. Darwish
2016-04-25 17:21:12 UTC
Marked as a v9.0 release blocker We have the root cause of this bug. The options are to revert the offending patch for 9.0 (leaving the underlying problem unaddressed, but this is not a regression). The alternative is to look at merging my patches to drop json-c as a dep soon. Root cause from email discussion follows: ---- Okay, so this is a fun one. The offending commit is: commit 12a202c510dcacbd2b85fcc1170484eb16fef491 Author: Arun Raghavan <git@arunraghavan.net> Date: Thu Dec 31 09:27:56 2015 +0530 format: Make pa_format_info_valid() stricter for PCM We should do stricter validation when we can. The check fails at: if (json_object_get_type(o) != json_type_string) { pa_log_debug("Format info property '%s' type is not string.", key); json_object_put(o); return -PA_ERR_INVALID; } Rhythmbox and Totem are linked to the json-glib library which *also* has a json_object_get_type(). That is the function which gets called, and returns a junk type which makes this code fail. (In reply to Arun Raghavan from comment #2) > We have the root cause of this bug. The options are to revert the offending > patch for 9.0 (leaving the underlying problem unaddressed, but this is not a > regression). The alternative is to look at merging my patches to drop json-c > as a dep soon. My vote goes to reverting the offending patch. Reverted the patch, so dropping as a blocker. Keeping this open (and changing the description) since I'd like a better fix to go in for 10.0. Fixed in the "next" branch. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.