Pulseaudio changed the API in 12.99 and we need to adapt the signatures

This commit is contained in:
Tomas Popela 2019-08-14 16:52:41 +02:00
parent 6c1fd53b98
commit 8b12346860
2 changed files with 54 additions and 1 deletions

View File

@ -0,0 +1,42 @@
diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs
--- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change 2019-08-14 16:27:55.057702172 +0200
+++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 16:37:21.603479886 +0200
@@ -24,7 +24,7 @@ pa_operation* pa_context_get_source_info
pa_operation* pa_context_get_source_info_by_name(pa_context* c, const char* name, pa_source_info_cb_t cb, void *userdata);
pa_operation* pa_context_get_source_info_list(pa_context* c, pa_source_info_cb_t cb, void* userdata);
pa_operation* pa_context_get_sink_info_list(pa_context* c, pa_sink_info_cb_t cb, void* userdata);
-pa_context_state_t pa_context_get_state(pa_context* c);
+pa_context_state_t pa_context_get_state(const pa_context* c);
pa_context* pa_context_new(pa_mainloop_api* mainloop, const char* name);
pa_operation* pa_context_set_source_volume_by_index(pa_context* c, uint32_t idx, const pa_cvolume* volume, pa_context_success_cb_t cb, void* userdata);
void pa_context_set_state_callback(pa_context* c, pa_context_notify_cb_t cb, void* userdata);
@@ -38,23 +38,23 @@ pa_operation* pa_stream_cork(pa_stream*
int pa_stream_disconnect(pa_stream* s);
int pa_stream_drop(pa_stream *p);
pa_operation* pa_stream_flush(pa_stream* s, pa_stream_success_cb_t cb, void* userdata);
-uint32_t pa_stream_get_device_index(pa_stream* s);
+uint32_t pa_stream_get_device_index(const pa_stream* s);
int pa_stream_get_latency(pa_stream* s, pa_usec_t* r_usec, int* negative);
-pa_stream_state_t pa_stream_get_state(pa_stream* p);
+pa_stream_state_t pa_stream_get_state(const pa_stream* p);
pa_stream* pa_stream_new(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map * map);
pa_stream* pa_stream_new_with_proplist(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map* map, pa_proplist* p);
pa_proplist* pa_proplist_new(void);
-int pa_proplist_contains(pa_proplist* p, const char* key);
+int pa_proplist_contains(const pa_proplist* p, const char* key);
void pa_proplist_free(pa_proplist* p);
-const char* pa_proplist_gets(pa_proplist* p, const char* key);
+const char* pa_proplist_gets(const pa_proplist* p, const char* key);
int pa_proplist_sets(pa_proplist* p, const char* key, const char* value);
-size_t pa_stream_readable_size(pa_stream *p);
+size_t pa_stream_readable_size(const pa_stream *p);
int pa_stream_peek(pa_stream* p, const void** data, size_t* nbytes);
void pa_stream_set_read_callback(pa_stream* p, pa_stream_request_cb_t cb, void* userdata);
void pa_stream_set_state_callback(pa_stream* s, pa_stream_notify_cb_t cb, void* userdata);
int pa_stream_write(pa_stream* p, const void* data, size_t nbytes, pa_free_cb_t free_cb, int64_t offset, pa_seek_mode_t seek);
void pa_stream_set_write_callback(pa_stream *p, pa_stream_request_cb_t cb, void *userdata);
void pa_stream_unref(pa_stream* s);
-int pa_context_errno(pa_context *c);
+int pa_context_errno(const pa_context *c);
const char* pa_strerror(int error);
pa_cvolume* pa_cvolume_set(pa_cvolume* a, unsigned channels, pa_volume_t v);

View File

@ -141,6 +141,13 @@ BuildRequires: libicu-devel >= 5.4
%global bundleharfbuzz 0
%endif
# Pulseaudio changed the API a little in 12.99.1
%if 0%{?fedora} > 30
%global pulseaudioapichange 1
%else
%global pulseaudioapichange 0
%endif
### Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
### Note: These are for Fedora use ONLY.
### For your own distribution, please get your own set of keys.
@ -306,6 +313,8 @@ Patch202: enable-vaapi.patch
Patch203: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch
# Fix compatibility with VA-API library (libva) version 1
Patch204: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch
# Pulseaudio changed the API a little in 12.99.1
Patch205: chromium-76.0.3809.100-pulse-api-change.patch
# Use chromium-latest.py to generate clean tarball from released build tarballs, found here:
# http://build.chromium.org/buildbot/official/
@ -491,7 +500,6 @@ BuildRequires: pkgconfig(gtk+-3.0)
%else
BuildRequires: pkgconfig(gtk+-2.0)
%endif
BuildRequires: pulseaudio-libs-devel
BuildRequires: python2-devel
%if 0%{?fedora} > 27
BuildRequires: python2-beautifulsoup4
@ -871,6 +879,9 @@ udev.
%endif
%endif
%if 0%{?pulseaudioapichange}
%patch205 -p1 -b .pulseaudioapichange
%endif
# Change shebang in all relevant files in this directory and all subdirectories
# See `man find` for how the `-exec command {} +` syntax works