Commit graph

3808 commits

Author SHA1 Message Date
Igor Kushnir 7fa7ad6e52 FFmpeg 5.0 player: stop reading raw data at EOF
Since the update to FFmpeg 5.0, when FFmpeg+libao internal player is
selected, most sounds fail to be pronounced. Furthermore, each failed
pronunciation attempt increases GoldenDict's CPU usage. Finally,
GoldenDict continues to hang and utilize the CPU cores when the user
attempts to exit it.

The reason for the issue is: GoldenDict's readAudioData() returns 0 at
EOF but FFmpeg expects the callback to return AVERROR_EOF. As a result,
internal player's threads are busy calling readAudioData() indefinitely.

a606f27f4c
documented the expected return value of the read_packet callback.
252500a78f
removed the code that handled the deprecated 0 return value gracefully.

The relevant deprecation warning
"Invalid return value 0 for stream protocol" had been flooding
GoldenDict's output for years

Fixes #1489.
2022-06-21 17:53:23 +03:00
xiaoyifang 7bcdfac334
Merge branch 'goldendict:master' into staged 2022-06-21 07:52:25 +08:00
Igor Kushnir 39abe4f1a6 Restart search when case sensitivity changes
One issue with the current implementation is that a wrong-cased match
remains selected when the user checks the Case Sensitive checkbox.
Another issue is that the noResults property of searchText is not
updated right away, which means that searchText's background color
remains wrong until next search.

Handle toggling case sensitivity in the same way as editing the searched
text: restart search from the beginning of the page. This improves the
Search-in-page UI consistency.
2022-06-20 19:18:57 +03:00
Xiao YiFang 59698b53dd fix version conflict 2022-06-20 07:50:30 +08:00
Xiao YiFang 2757e34e03 Merge branch 'staged' into dev 2022-06-19 21:22:52 +08:00
xiaoyifang 8ee6446df1
Merge pull request #104 from xiaoyifang/fix/concurrent-run
concurrent run will crash application
2022-06-19 21:22:30 +08:00
Xiao YiFang bd02d65ecc concurrent run will crash application 2022-06-19 20:26:39 +08:00
Xiao YiFang cbfbdd88fc Merge branch 'staged' into dev 2022-06-19 16:47:56 +08:00
Xiao YiFang 6ff042d56f fulltext search can not cancel 2022-06-19 14:56:18 +08:00
Xiao YiFang 4edd3b3987 add mutex to scopedmemmap 2022-06-19 13:26:41 +08:00
Xiao YiFang 3c02fb7499 bump alpha version to 22.6.22 2022-06-19 10:16:31 +08:00
Xiao YiFang 1475590ae6 bump version to 22.6.21 2022-06-19 09:58:53 +08:00
Xiao YiFang cea97f5727 fix merge conflict 2022-06-19 09:46:39 +08:00
Xiao YiFang 541de07677 Merge branch 'staged' into dev 2022-06-18 20:49:19 +08:00
Xiao YiFang f65d47602a concurrent excepton 2022-06-18 20:46:17 +08:00
Xiao YiFang ff5e3b5778 feat:optimize fulltext search ,skip unfinished ftx 2022-06-18 18:50:05 +08:00
Xiao YiFang a5726aead7 replace regularexpress with global static variables 2022-06-18 18:20:58 +08:00
Xiao YiFang afd477e3a6 fix:a very race case boundary protection
need further inverstigation
2022-06-18 13:53:26 +08:00
Xiao YiFang 9472e1a06c code simplified 2022-06-18 12:50:12 +08:00
Xiao YiFang 68468420a9 Merge branch 'staged' into dev 2022-06-18 09:27:19 +08:00
Xiao YiFang 3d3088738e revert mutex parent class from qrecursivemutex to qmutex 2022-06-18 09:17:43 +08:00
Xiao YiFang 2502589645 Merge branch 'staged' into dev 2022-06-18 09:10:40 +08:00
Xiao YiFang 7a43cc366e use qmutex instead of mutex(qmutexrecursive) 2022-06-18 09:09:49 +08:00
Xiao YiFang 815a7d7fa3 Merge branch 'staged' into dev 2022-06-17 21:47:32 +08:00
Xiao YiFang 6d5ff66008 feat: cancel fulltext search 2022-06-17 21:41:45 +08:00
Xiao YiFang 2f3af9d7d3 map nullptr check 2022-06-17 20:37:59 +08:00
Xiao YiFang fa72de7b17 github:ubuntu 6.x appimage 2022-06-17 20:29:02 +08:00
Xiao YiFang e482e499a3 Merge branch 'staged' into dev 2022-06-17 20:23:29 +08:00
Xiao YiFang ceb31baf97 add mutex to getBlock 2022-06-17 20:23:16 +08:00
Xiao YiFang cfaa5a112f Merge branch 'staged' into dev 2022-06-16 21:08:21 +08:00
Xiao YiFang 5c4a968781 github:upgrade qt6.3.0 to qt6.3.1 2022-06-16 21:08:01 +08:00
Xiao YiFang 1830415da5 fix: highlight a rare case when toPlainText omit space between two words 2022-06-16 21:03:58 +08:00
Xiao YiFang 2da252539a auto file unmap 2022-06-16 20:37:26 +08:00
Xiao YiFang 947323854a remove extra parantheses 2022-06-16 20:28:00 +08:00
Xiao YiFang 02f7fc0048 opt: concurrent limitation and auto release semaphore 2022-06-16 20:17:07 +08:00
xiaoyifang c42326834a
Update ubuntu-6.2.yml 2022-06-16 10:06:46 +08:00
xiaoyifang f2ba7fc6c0
Update ubuntu.yml 2022-06-16 10:06:19 +08:00
Xiao YiFang a9fc1dc162 Merge branch 'staged' into dev 2022-06-16 08:35:11 +08:00
xiaoyifang 8f3ff22fa5
Merge pull request #101 from xiaoyifang/feature/optimize-combine-cjk-search
optimize combine cjk search
2022-06-16 08:34:52 +08:00
Xiao YiFang 79e2f7c098 unmap file when throw exception 2022-06-16 08:18:59 +08:00
Xiao YiFang 4b9d71376d remove javascript highlight logic
webengine's findtext(highlight) has little features compared to webkits
2022-06-16 08:08:49 +08:00
Xiao YiFang 6f9c1067a3 opt: optimize cjk fulltext search
1, add concurrent parallel task limitaion
2022-06-16 08:08:43 +08:00
Xiao YiFang f52251d640 fix:mdict compact html parse style error 2022-06-16 08:00:40 +08:00
xiaoyifang 5fa479b127
Merge pull request #100 from xiaoyifang/feature/concurrent-fseek
feat:mdx lock free when loadArticle
2022-06-15 14:08:29 +08:00
Xiao YiFang 5571f877bc fix: F12 inspect windows open on the first time 2022-06-15 08:12:27 +08:00
Xiao YiFang 4cf184d646 fix upstream merge conflict 2022-06-15 07:51:45 +08:00
Xiao YiFang 949ad6de57 fix mergeconflict when merge upstream 2022-06-14 22:07:01 +08:00
Xiao YiFang 206474364a feat:mdx lock free when loadArticle 2022-06-14 21:35:21 +08:00
Xiao YiFang 53bd9f96dc concurrent minor changes
1, limit QtConcurrent thread count
2, add mutex to sets operation
2022-06-14 20:51:30 +08:00
xiaoyifang 5259be69e0
Merge pull request #99 from xiaoyifang/feature/github-action-release
github: add release changelog
2022-06-14 07:41:22 +08:00