queue2: Fix missing/dropped buffering messages at startup
This fixes a bug that occurs when an attempt is made to post a buffering message before the queue2 was assigned a bus. One common situation where this happens is when the use-buffering property is set to TRUE before the queue2 was added to a bin. If the result of gst_element_post_message() is not checked, and the aforementioned situation occurs, then last_posted_buffering_percent and percent_changed will still be updated, as if posting the message succeeded. Later attempts to post again will not do anything because the code then assumes that a message with the same percentage was previously posted successfully and posting again is redundant. Updating these variables only if posting succeed and explicitely posting a buffering message in the READY->PAUSED state change ensure that a buffering message is posted as early as possible.
Status | Job ID | Name | Coverage | ||||||
---|---|---|---|---|---|---|---|---|---|
Preparation | |||||||||
passed |
#833847
|
gst indent |
00:00:45
|
|
|||||
passed |
#833846
|
manifest |
00:00:50
|
|
|||||
Build | |||||||||
passed |
#833857
|
build cerbero cross-android universal |
00:18:03
|
|
|||||
manual |
#833861
gst-ios-12.2
allowed to fail
manual
|
build cerbero cross-ios universal |
|
||||||
passed |
#833858
|
build cerbero cross win32 |
00:08:40
|
|
|||||
passed |
#833859
|
build cerbero cross win64 |
00:05:45
|
|
|||||
passed |
#833856
|
build cerbero fedora x86_64 |
00:08:00
|
|
|||||
passed |
#833860
gst-macos-10.14
|
build cerbero macos x86_64 |
00:07:04
|
|
|||||
passed |
#833852
|
build clang fedora x86_64 |
00:08:50
|
|
|||||
passed |
#833848
|
build fedora x86_64 |
00:08:53
|
|
|||||
passed |
#833855
docker
windows
1607
|
build msys2 |
00:14:38
|
|
|||||
passed |
#833849
|
build nodebug fedora x86_64 |
00:04:25
|
|
|||||
passed |
#833850
|
build static fedora x86_64 |
00:13:41
|
|
|||||
passed |
#833851
|
build static nodebug fedora x86_64 |
00:04:44
|
|
|||||
passed |
#833853
docker
windows
1607
|
build vs2017 amd64 |
00:11:09
|
|
|||||
passed |
#833854
docker
windows
1607
|
build vs2017 x86 |
00:11:01
|
|
|||||
Test | |||||||||
passed |
#833862
|
check fedora |
00:03:39
|
|
|||||
failed |
#834714
|
integration testsuites fedora |
00:50:47
|
|
|||||
passed |
#833868
|
valgrind bad |
00:15:26
|
|
|||||
passed |
#833865
|
valgrind base |
00:09:26
|
|
|||||
passed |
#833864
|
valgrind core |
00:14:15
|
|
|||||
passed |
#833869
|
valgrind ges |
00:09:38
|
|
|||||
passed |
#833866
|
valgrind good |
00:12:31
|
|
|||||
passed |
#833867
|
valgrind ugly |
00:02:15
|
|
|||||
failed |
#833863
|
integration testsuites fedora |
00:44:41
|
|
|||||
Integrate | |||||||||
passed |
#833870
|
cross-android universal examples |
00:06:01
|
|
|||||
skipped |
#833872
gst-ios-12.2
allowed to fail
manual
|
cross-ios universal examples |
|
||||||
passed |
#833871
|
documentation |
00:05:12
|
|
|||||
Name | Stage | Failure | ||
---|---|---|---|---|
failed
|
integration testsuites fedora | Test | ||
|