-
Notifications
You must be signed in to change notification settings - Fork 234
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
Merge master into feature/cdn-updates #3230
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
The reason this wasn't added to the `AxMsRdpClientX` classes is that I thought it best to not touch `AxMSTSCLib` classes as they are likely generated. Signed-off-by: Danilo Del Busso <[email protected]>
The `Connect` method returns `E_FAIL` if it is called while the control is already connected or in the connecting state. This can be hit when a lot of connections are being opened at the same time, and it's there as a failsafe. Also adds `IsAttemptingConnection` as a new field Signed-off-by: Danilo Del Busso <[email protected]>
…onnection to a VM This prevents `AccessViolationException`s being called, as they're hit when two instances of `AxMSTSCLib.AxMsRdpClient9` call `Connect` on the same IP + Port combination, which results in the same memory being accessed in unmanaged code. Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
This avoids having too many timers running at the same time. One could for instance update the `EnableRDPPolling` property from the `Options` dialog and start several concurrent `Timer`s Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Konstantina Chremmou <[email protected]>
Merge feature/cdn-updates to master + CA-381216
…t causes confusion to the user. Signed-off-by: Konstantina Chremmou <[email protected]>
Also, prevent OnPageUpdated being called twice. Signed-off-by: Konstantina Chremmou <[email protected]>
Signed-off-by: Konstantina Chremmou <[email protected]>
… updates. Signed-off-by: Konstantina Chremmou <[email protected]>
…eneral Tab Page Signed-off-by: Danilo Del Busso <[email protected]>
File name needs to be `CONTRIBUTING` for GitHub to pick it up as a valid file for contributor guidelines. See https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/setting-guidelines-for-repository-contributors#adding-a-contributing-file Signed-off-by: Danilo Del Busso <[email protected]>
…s to the Messages.ResourceManager. Signed-off-by: Konstantina Chremmou <[email protected]>
…ns. Removed obsolete messages. Signed-off-by: Konstantina Chremmou <[email protected]>
Signed-off-by: Konstantina Chremmou <[email protected]>
Update README and CONTRIB files
CP-40739 (build with VS 2022) and some tech debt
… Search tabPage. Signed-off-by: Konstantina Chremmou <[email protected]>
Refactored retrieval of values from Messages.resx.
Signed-off-by: Danilo Del Busso <[email protected]>
* CP-45071: Convert XenCenter build scripts to PowerShell. * Removed obsolete variable. * Pass the timestamp server and the certificate thumbprint as parameters to the build and sign scripts. * Added further logging and made the verbose output of cmdlets optional. * Updated README. * Improved script readability. Signed-off-by: Konstantina Chremmou <[email protected]>
* Tidy up `ArchiveMaintainer`: use naming conventions * Tidy up `ArchiveMaintainer`: use `var` when possible * Tidy up `ArchiveMaintainer`: fix typos * Tidy up `ArchiveMaintainer`: move action methods in own region * Tidy up `ArchiveMaintainer`: apply code formatting * Tidy up `ArchiveMaintainer`: remove unused constant/using * Tidy up `ArchiveMaintainer`: group methods into regions * Tidy up `ArchiveMaintainer`: remove xmldocs * Tidy up `ArchiveMaintainer`: miscellaneous changes * Tidy up `ArchiveMaintainer`: move `NextArchiveDown` to correct `region` * CA-376887: Use multiple threads to load performance tab data This commit removes the ad-hoc use of `Thread` and instead relies on `ThreadPool` and `CancellationToken`s to handle multi-threading. To achieve this, `ArchiveMaintainer` instances are now tied to only one `XenObject`. If a user navigates to another Performance tab, a new instance of `ArchiveMaintainer` is used. This enables XenCenter to quietly cancel ongoing data fetching operations, and start a new one without affecting the UI. UI elements are simply updated to point to the new `ArchiveMaintainer` while the old one is being closed. Please note that follow up commits to clean up `ArchiveMaintiner` and this implementation are coming. They have been separated to make reviews easier * CA-376887: Move initial load logic to separate method in `ArchiveMaintainer` * CA-376887: Rename `Update` to `StartUpdateLoop` in `ArchiveMaintainer` * CA-376887: Fix use of `Dispose` in `PerformancePage` and collapse `Stop`/`Pause` into one method * CA-376887: Remove unused `FirstTime` variable * Tidy up `ArchiveMaintainer`: use `switch` when possible and improve logging * Tidy up `ArchiveMaintainer`: Move variables inline * Tidy up `ArchiveMaintainer`: Standardize fields/properties * Tidy up `ArchiveMaintainer`: Normalize whitespace * CA-376887: Ensure only one thread is spawned for each `ArchiveMaintainer` - Ensures resources are disposed of - Fixes issues whereby quickly starting and stopping threads for the same `XenObject` `ArchiveMantainer` would cause threads from not exiting * Improve formatting and whitespace in `ArchiveMaintainer` * Improve logging of exceptions in `ArchiveMaintainer:Get` * Fix `ServerNow` calls in `ArchiveMaintainer` * Deregister `ArchiveMaintainer` events when a new one is reassigned. Also rename methods * Apply code review suggestions Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Konstantina Chremmou <[email protected]>
Signed-off-by: Konstantina Chremmou <[email protected]>
Build script corrections.
…r tidy. Signed-off-by: Konstantina Chremmou <[email protected]>
Signed-off-by: Konstantina Chremmou <[email protected]>
Signed-off-by: Konstantina Chremmou <[email protected]>
…hive generation (#3184) * CA-375900: Prepend `//?/` to file paths when creating streams for archive generation The string works to enable creation of files with paths larger than 260 characters. * CA-375900: Add directory support and rename utility method * Fix whitespace in `ArchiveWriterTest` * CA-375900: Explicitly enumerate files and directories in `ArchiveWriter` `Directory.GetFiles` and `Directory.GetDirectories` do not enumerate if paths are longer than 260, even when prepended with `//?/`. * CA-375900: Add long path tests to `ArchiveWriter` * CA-375900: Add long path tests to `ArchiveIterator` * CA-375900: Ensure files are added to folders in archive * Use a recursive method to add directories and files to archive in `ArchiveIterator` Also improves progress reporting by basing it on directory count * Fix typos * Expand `ArchiveWriterTests` to cover all combinations of directory and path lengths * Ensure that directories used in recursive `Directory.Delete` calls are using long path format If files in the directory exceed the 260 character limit, the calls will fail * Expand `ArchiveIteratorTests` to cover all combinations of directory and path lengths * Ensure relative path name removes `rootPath` * Fix typo * Do not use long paths when importing OVFs The import uses `DiscUtils` which cannot handle paths prepended with `//?/` * Remove use of `ToLongWindowsPath` within appliance export This partially reverts commit 819425855c56c14b937849714b359003465bd2f4. * Refactoring and some corrections. Signed-off-by: Danilo Del Busso <[email protected]> Signed-off-by: Konstantina Chremmou <[email protected]> Co-authored-by: Konstantina Chremmou <[email protected]>
…cters Pipes can be created with invalid characters in their names (such as `|`). This results in an exception being thrown when those files are accessed via standard API calls such as `Directory.GetFiles`. Other processes might create these pipes and inadvertently prevent XenCenter from starting altogether. Signed-off-by: Danilo Del Busso <[email protected]>
Signed-off-by: Konstantina Chremmou <[email protected]>
CitrixChris
approved these changes
Sep 29, 2023
neatleygit
approved these changes
Sep 29, 2023
CitrixChris
added
2 approvals
PR has been approved by two reviewers
and removed
1 approval
PR has been approved by one reviewer
labels
Sep 29, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is to bring the feature branch up to date with master so we can start the improvements. Approval is only a formality as the code on master is already reviewed.