mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-07-03 03:01:44 +00:00
[hal] Reject duplicate apps connecting as main robot process to mrccomm (#9015)
This commit is contained in:
@@ -315,8 +315,23 @@ MrcLibDsImpl::MrcLibDsImpl() {
|
||||
std::terminate();
|
||||
}
|
||||
|
||||
// Initialize control first, making sure its properly checked for errors
|
||||
MRC_Status controlInitStatus = MRC_DsCommsControl_Initialize();
|
||||
if (controlInitStatus == MRC_STATUS_MULTIPLE_USER_PROGRAMS) {
|
||||
fmt::print(stderr,
|
||||
"Warning: Multiple user programs detected. Restarting app and "
|
||||
"retrying...\n");
|
||||
std::terminate();
|
||||
}
|
||||
if (controlInitStatus != MRC_STATUS_SUCCESS) {
|
||||
fmt::print(stderr,
|
||||
"Error: MRC_DsCommsControl_Initialize failed with status {}. "
|
||||
"Restarting app and retrying...\n",
|
||||
controlInitStatus);
|
||||
std::terminate();
|
||||
}
|
||||
MRC_DsComms_Initialize();
|
||||
MRC_DsCommsControl_Initialize();
|
||||
|
||||
MRC_Console_Initialize();
|
||||
|
||||
// Wait for 10 seconds for the system server to be ready.
|
||||
|
||||
2
shared/bazel/thirdparty/integrity_helper.py
vendored
2
shared/bazel/thirdparty/integrity_helper.py
vendored
@@ -157,7 +157,7 @@ def update_libssh():
|
||||
|
||||
def update_mrclib():
|
||||
# Keep in sync with shared/libmrclib.gradle
|
||||
version = "2027.1.0-alpha-1-65-g21f308e"
|
||||
version = "2027.1.0-alpha-1-69-gc4dd18d"
|
||||
|
||||
has_headers = True
|
||||
classifiers = [
|
||||
|
||||
@@ -2,17 +2,17 @@ http_archive = use_repo_rule("@bazel_tools//tools/build_defs/repo:http.bzl", "ht
|
||||
|
||||
################################################################################
|
||||
# Generated by shared/bazel/thirdparty/integrity_helper.py
|
||||
url_pattern = "https://frcmaven.wpi.edu/artifactory/development-2027/org/wpilib/mrclib/mrclib-cpp/2027.1.0-alpha-1-65-g21f308e/mrclib-cpp-2027.1.0-alpha-1-65-g21f308e-%s.zip"
|
||||
url_pattern = "https://frcmaven.wpi.edu/artifactory/development-2027/org/wpilib/mrclib/mrclib-cpp/2027.1.0-alpha-1-69-gc4dd18d/mrclib-cpp-2027.1.0-alpha-1-69-gc4dd18d-%s.zip"
|
||||
|
||||
headers_integrity = "a8b38a00d584b50c3bb84800121df1022ac1500f59e4ecac85068adca7c0ac49"
|
||||
headers_integrity = "7e0d3efa8d0264c3dcd7088a94180986555a97860db512c516a4d8a228585169"
|
||||
|
||||
_LIB_ARTIFACTS = {
|
||||
"linuxarm64": ("linux", "**/*.so*", "38009110f0deeaeaec08b59fe37ce7e87d3ee4f3d86bd70a7003b22a75bcb43e"),
|
||||
"linuxx86-64": ("linux", "**/*.so*", "503b3107febd35d32d28e5a3135c48fbd8c09d49d0b1f404182bc9b3c6877d12"),
|
||||
"osxuniversal": ("osx", "**/*.dylib", "422a52e4b5f859ef3afb7a97e66ba72572894a73abd88126e09647929b1701c1"),
|
||||
"linuxsystemcore": ("linux", "**/*.so*", "f84d4a6852d52da5535c054944b45f6f0c3d98271756ebfa28103a6f45e073e5"),
|
||||
"windowsarm64": ("windows", "**/*.dll", "8fd028fa1144c1c18adf9facf4dd690f6d888565c73498bfae01849d0400dad0"),
|
||||
"windowsx86-64": ("windows", "**/*.dll", "6e905f298fd261e68abb2bfcad7d47334d57f8b6dd14046bf2b98f55c7a657d7"),
|
||||
"linuxarm64": ("linux", "**/*.so*", "b87f7187afc1780422526d010f2b195f2f160175dcfbba2834eda8f27c647304"),
|
||||
"linuxx86-64": ("linux", "**/*.so*", "510088cbb2b7ca3fbd47691debbe89d5d2dd022cd5472a723c95a6e1db1b9cd8"),
|
||||
"osxuniversal": ("osx", "**/*.dylib", "35d6df2d76165b099d9592bb29e84b8edd365382d926a818bfe97902919d0d63"),
|
||||
"linuxsystemcore": ("linux", "**/*.so*", "40a2f1e641bec88ea21794dacf6212e99cdf19c0e7dbcb777159b6134d2ee390"),
|
||||
"windowsarm64": ("windows", "**/*.dll", "6bcc645f5af742613401e4e3a162cf72193c6fd67d1dd32a5cefad899013d13b"),
|
||||
"windowsx86-64": ("windows", "**/*.dll", "b69c8567586d7b5499fe602758259435c79a4ee9e311669baaff0f9878028b14"),
|
||||
}
|
||||
# End auto-gen
|
||||
################################################################################
|
||||
|
||||
@@ -5,7 +5,7 @@ nativeUtils {
|
||||
artifactId = "mrclib-cpp"
|
||||
headerClassifier = "headers"
|
||||
ext = "zip"
|
||||
version = '2027.1.0-alpha-1-65-g21f308e'
|
||||
version = '2027.1.0-alpha-1-69-gc4dd18d'
|
||||
skipAtRuntimePlatforms.add(nativeUtils.wpi.platforms.systemcore)
|
||||
targetPlatforms.addAll(nativeUtils.wpi.platforms.allPlatforms)
|
||||
noDebugSplit = true
|
||||
|
||||
Reference in New Issue
Block a user