Merge pull request #73 from cheir-mneme/fix/sonarcloud-bugs

Fix SonarCloud bugs: threading, React state, sorting
This commit is contained in:
Cody Kickertz 2025-12-19 15:44:38 -06:00 committed by GitHub
commit 88c81cf233
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 13 additions and 12 deletions

View file

@ -50,7 +50,7 @@ class ImportMovie extends Component {
onSelectAllChange = ({ value }) => {
// Only select non-dupes
this.setState(selectAll(this.state.selectedState, value));
this.setState((prevState) => selectAll(prevState.selectedState, value));
};
onSelectedChange = ({ id, value, shiftKey = false }) => {

View file

@ -78,7 +78,7 @@ class ImportMovieSelectMovie extends Component {
this._addListener();
}
this.setState({ isOpen: !this.state.isOpen });
this.setState((prevState) => ({ isOpen: !prevState.isOpen }));
};
onSearchInputChange = ({ value }) => {

View file

@ -182,11 +182,13 @@ class Collection extends Component {
};
onSelectAllChange = ({ value }) => {
this.setState(selectAll(this.state.selectedState, value));
this.setState((prevState) => selectAll(prevState.selectedState, value));
};
onSelectAllPress = () => {
this.onSelectAllChange({ value: !this.state.allSelected });
this.setState((prevState) =>
selectAll(prevState.selectedState, !prevState.allSelected)
);
};
onRefreshMovieCollectionsPress = () => {

View file

@ -94,10 +94,7 @@ function QualityProfileSelectInput({
);
useEffect(() => {
if (
!value ||
!values.some((option) => option.key === value || option.key === value)
) {
if (!value || !values.some((option) => option.key === value)) {
const firstValue = values.find(
(option) => typeof option.key === 'number'
);

View file

@ -214,11 +214,13 @@ class DiscoverMovie extends Component {
};
onSelectAllChange = ({ value }) => {
this.setState(selectAll(this.state.selectedState, value));
this.setState((prevState) => selectAll(prevState.selectedState, value));
};
onSelectAllPress = () => {
this.onSelectAllChange({ value: !this.state.allSelected });
this.setState((prevState) =>
selectAll(prevState.selectedState, !prevState.allSelected)
);
};
onImportListSyncPress = () => {

View file

@ -474,7 +474,7 @@ class EditQualityProfileModalContentConnector extends Component {
};
onToggleEditGroupsMode = () => {
this.setState({ editGroups: !this.state.editGroups });
this.setState((prevState) => ({ editGroups: !prevState.editGroups }));
};
//

View file

@ -25,7 +25,7 @@ public async Task BroadcastMessage(SignalRMessage message)
public class MessageHub : Hub
{
private static HashSet<string> _connections = new HashSet<string>();
private static readonly HashSet<string> _connections = new HashSet<string>();
public static bool IsConnected
{