-
Notifications
You must be signed in to change notification settings - Fork 1.3k
fix(qt): opening a torrent file on Windows launches a new instance #7841
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
fix(qt): opening a torrent file on Windows launches a new instance #7841
Conversation
@sanapci if you'd like to update the build-on-Windows steps including a vcpkg.json file I would LOOOVE a PR on that. I spent a significant amount of time building on Windows last weekend and this weekend & hit several snags with the translation module, with an install issue in qtbase 6.9.x, with trying to switch between static and dynamic builds -- and finally with icons not loading properly (so I suspect I still wasn't installing everything correctly). If you (or anyone!) wants to make it easier to make a dev build of Transmission on windows either via the command line or Visual Studio via vcpkg.json, please do. |
| std::set_difference( | ||
| old.begin(), | ||
| old.end(), | ||
| processed.begin(), | ||
| processed.end(), | ||
| std::back_inserter(removed), | ||
| TorrentIdLessThan()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This change looks OK, but is it related to the topic of this PR? It seems like it's a separate fix.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You are right, it is a bit different topic (#7182), it just came across when I took a look on the original error.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please make a separate PR for it and remove it from this one so that there is one topic per PR 👍
Well, maybe I could try to setup that, but I might need some time for that. (I am not really using Windows, only for one dedicated software that is not running under Linux and I am really out of space on that machine. This small PR also took a week to create, because I was quite busy this week and the building failed usually by running out of space. 🤣 ) |
Fixes #7629
As a side note, maybe it would be also a good idea to add a vcpkg.json file instead of command line command execution.
Explanation:
If CMake will not find Qt's AX Client and Server modules and manages to find the DBus module, there will be no thrown error.
Since DBus is not really available on Windows and AX related preprocessor variable (ENABLE_COM_INTEROP) is false and the
tryDelegate()andInteropHelper::isConnected()functions will return false, like no other instance is running.Because of this, when the transmission-qt opens new torrent file, it will not be able to connect to the other instance via IPC and starts a new instance,
Notes: CMake check for relevant Qt IPC module (ActiveX on Windows otherwise DBus) found or throw error