You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Crash when searching for emotes in channel-less contexts #6354
When opening the emote menu in contexts where a channel doesn't exist (/mentions, /whispers, /automod, /live, etc.), then typing anything into the search bar, Chatterino will crash.
Steps to reproduce:
Create a new/navigate to a /live tab
Open the emote menu with the chat box button or Ctrl+E
Type anything into the search bar
Observe the crash
Screenshots
No response
OS and Chatterino Version
Chatterino 2.5.3 (commit 3f3a31d) built with Qt 6.7.1, MSVC 194334808, Crashpad Running on Windows 10 Version 22H2, kernel: 10.0.19045
This would be a good first issue for someone wanting to try out some Chatterino development.
The problem comes from the emote popup (src/widgets/dialogs/EmotePopup.cpp)'s filterEmotes function trying to perform actions on the searchView_'s underlying channel. However, the underlying channel can be null, so we need to check that before attempting to use it.
If someone is interesting in taking this task on and runs into any issues, feel free to use this issue to ask those questions, or ask in our Discord.
Hmmm, vcpkg is complaining about a checksum mismatch for boost-variant2. Downloading the archive through my browser also leads to the same SHA512 hash as the actual from vcpkg.
vcpkg output
Detecting compiler hash for triplet x64-windows...
Compiler found: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/bin/Hostx64/x64/cl.exe
The following packages are already installed:
* boost-assert:x64-windows@1.85.0
* boost-cmake:x64-windows@1.85.0
* boost-config:x64-windows@1.85.0
* boost-headers:x64-windows@1.85.0
* boost-mp11:x64-windows@1.85.0
* boost-predef:x64-windows@1.85.0
* boost-throw-exception:x64-windows@1.85.0
* boost-uninstall:x64-windows@1.85.0
* boost-winapi:x64-windows@1.85.0
* vcpkg-boost:x64-windows@2024-04-25
* vcpkg-cmake:x64-windows@2024-04-18
* vcpkg-cmake-config:x64-windows@2022-02-06#1
The following packages will be built and installed:
* boost-algorithm:x64-windows@1.85.0
* boost-align:x64-windows@1.85.0
* boost-array:x64-windows@1.85.0
boost-asio:x64-windows@1.85.0
boost-beast:x64-windows@1.85.0
* boost-bind:x64-windows@1.85.0
boost-circular-buffer:x64-windows@1.85.0
* boost-concept-check:x64-windows@1.85.0
* boost-container:x64-windows@1.85.0#1
* boost-container-hash:x64-windows@1.85.0
* boost-context:x64-windows@1.85.0
* boost-conversion:x64-windows@1.85.0
* boost-core:x64-windows@1.85.0
* boost-coroutine:x64-windows@1.85.0
* boost-date-time:x64-windows@1.85.0
* boost-describe:x64-windows@1.85.0
* boost-detail:x64-windows@1.85.0
* boost-endian:x64-windows@1.85.0
* boost-exception:x64-windows@1.85.0
boost-foreach:x64-windows@1.85.0
* boost-function:x64-windows@1.85.0
* boost-function-types:x64-windows@1.85.0
* boost-functional:x64-windows@1.85.0
* boost-fusion:x64-windows@1.85.0
* boost-integer:x64-windows@1.85.0
boost-interprocess:x64-windows@1.85.0#1
* boost-intrusive:x64-windows@1.85.0
* boost-io:x64-windows@1.85.0
* boost-iterator:x64-windows@1.85.0
boost-json:x64-windows@1.85.0
* boost-lexical-cast:x64-windows@1.85.0
* boost-logic:x64-windows@1.85.0
* boost-move:x64-windows@1.85.0
* boost-mpl:x64-windows@1.85.0
* boost-numeric-conversion:x64-windows@1.85.0
* boost-optional:x64-windows@1.85.0
* boost-parameter:x64-windows@1.85.0
* boost-pool:x64-windows@1.85.0
* boost-preprocessor:x64-windows@1.85.0
* boost-range:x64-windows@1.85.0
* boost-regex:x64-windows@1.85.0
boost-signals2:x64-windows@1.85.0
* boost-smart-ptr:x64-windows@1.85.0
* boost-static-assert:x64-windows@1.85.0
* boost-static-string:x64-windows@1.85.0
* boost-system:x64-windows@1.85.0
* boost-tokenizer:x64-windows@1.85.0
* boost-tuple:x64-windows@1.85.0
* boost-type-index:x64-windows@1.85.0
* boost-type-traits:x64-windows@1.85.0
* boost-typeof:x64-windows@1.85.0
* boost-unordered:x64-windows@1.85.0
* boost-utility:x64-windows@1.85.0
boost-variant:x64-windows@1.85.0
* boost-variant2:x64-windows@1.85.0
* brotli:x64-windows@1.1.0#1
* bzip2[core,tool]:x64-windows@1.0.8#5
* double-conversion:x64-windows@3.3.0
* egl-registry:x64-windows@2024-01-25
* freetype[brotli,bzip2,core,png,zlib]:x64-windows@2.13.2#1
* libjpeg-turbo:x64-windows@3.0.2
* libpng:x64-windows@1.6.43#1
* libwebp[core,libwebpmux,nearlossless,simd,unicode]:x64-windows@1.4.0#1
* opengl:x64-windows@2022-12-04#3
* opengl-registry:x64-windows@2024-02-10#1
* openssl:x64-windows@3.3.0#1
* pcre2[core,jit,platform-default-features]:x64-windows@10.43
qt5compat[core,textcodec]:x64-windows@6.7.0
qtbase[concurrent,core,doubleconversion,freetype,gui,jpeg,network,openssl,png,thread,widgets]:x64-windows@6.7.0
qtimageformats[core,webp]:x64-windows@6.7.0
qtsvg:x64-windows@6.7.0
* vcpkg-cmake-get-vars:x64-windows@2023-12-31
* zlib:x64-windows@1.3.1
Additional packages (*) will be modified to complete this operation.
Restored 0 package(s) from %LOCALAPPDATA%\vcpkg\archives in 1.64 ms. Use --debug to see more details.
Installing 1/73 boost-variant2:x64-windows@1.85.0...
Building boost-variant2:x64-windows@1.85.0...
Downloading https://github.com/boostorg/variant2/archive/boost-1.85.0.tar.gz -> boostorg-variant2-boost-1.85.0.tar.gz
boostorg-variant2-boost-1.85.0.tar.gz.38980.part: error: download from https://github.com/boostorg/variant2/archive/boost-1.85.0.tar.gz had an unexpected hash
note: Expected: 1a5fc662247f3e8437dfeec552fc3c5c380112db4a2e6b0c9e7abad1c06ec0d07dcbb528c244884f2507ac14174f4db3fadfd211e84d9bcd26a5ab5f33cb4d97
note: Actual : f4f79ab208c534a7e7a285e2722dbe14c7d810a8ad9e73dd2a6de51862b3b08928802251e8661815e5bf9f82eefd10125a984724ae4670823307edc93cd679a8
CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:136 (message):
Download failed, halting portfile.
Call Stack (most recent call first):
scripts/cmake/vcpkg_from_github.cmake:120 (vcpkg_download_distfile)
buildtrees/versioning_/versions/boost-variant2/71aeea8a9326c7b978940c83970790090ddcf8f9/portfile.cmake:3 (vcpkg_from_github)
scripts/ports.cmake:206 (include)
error: building boost-variant2:x64-windows failed with: BUILD_FAILED
See https://learn.microsoft.com/vcpkg/troubleshoot/build-failures?WT.mc_id=vcpkg_inproduct_cli for more information.
Elapsed time to handle boost-variant2:x64-windows: 461 ms
Please ensure you're using the latest port files with `git pull` and `vcpkg update`.
Then check for known issues at:
https://github.com/microsoft/vcpkg/issues?q=is%3Aissue+is%3Aopen+in%3Atitle+boost-variant2
I've tried re-cloning vcpkg but it still throws the error. Do you have any ideas on what might be wrong?
Edit: I tried on a second device and have the exact same checksum issue. I think boost might have modified the archive without updating the associated checksum?
Hmmm, vcpkg is complaining about a checksum mismatch for boost-variant2. Downloading the archive through my browser also leads to the same SHA512 hash as the actual from vcpkg.
Have you tried bumping the baseline? Maybe the packages are out of date or something. Feel free to make a PR if that fixed it.
Have you tried bumping the baseline? Maybe the packages are out of date or something.
That worked! I'll submit a PR with the updated baseline.
It seems that vcpkg is no longer able to fetch Qt though. BUILDING_ON_WINDOWS_WITH_VCPKG should probably be updated to mention that manually installing Qt is now required like in BUILDING_ON_WINDOWS. I can also make a PR for that if wanted. Never mind, I just installed Qt manually and I'm still getting CMake errors.
Activity
ScrubN commentedon Jul 22, 2025
Additionally, both sub and global emotes don't load when there's no channel context. Emojis still work as expected.
pajlada commentedon Jul 22, 2025
This would be a good first issue for someone wanting to try out some Chatterino development.
The problem comes from the emote popup (
src/widgets/dialogs/EmotePopup.cpp)'sfilterEmotesfunction trying to perform actions on thesearchView_'s underlying channel. However, the underlying channel can be null, so we need to check that before attempting to use it.If someone is interesting in taking this task on and runs into any issues, feel free to use this issue to ask those questions, or ask in our Discord.
ScrubN commentedon Jul 22, 2025
I can submit a PR for this, just fighting with vcpkg first ð
ScrubN commentedon Jul 22, 2025
Hmmm, vcpkg is complaining about a checksum mismatch for boost-variant2. Downloading the archive through my browser also leads to the same SHA512 hash as the actual from vcpkg.
vcpkg output
I've tried re-cloning vcpkg but it still throws the error. Do you have any ideas on what might be wrong?
Edit: I tried on a second device and have the exact same checksum issue. I think boost might have modified the archive without updating the associated checksum?
Nerixyz commentedon Jul 26, 2025
Have you tried bumping the baseline? Maybe the packages are out of date or something. Feel free to make a PR if that fixed it.
ScrubN commentedon Jul 26, 2025
That worked! I'll submit a PR with the updated baseline.
It seems that vcpkg is no longer able to fetch Qt though. BUILDING_ON_WINDOWS_WITH_VCPKG should probably be updated to mention that manually installing Qt is now required like in BUILDING_ON_WINDOWS. I can also make a PR for that if wanted.Never mind, I just installed Qt manually and I'm still getting CMake errors.