Opened 9 months ago
Closed 9 months ago
#16689 closed defect (fixed)
Closing SteamVR app: xr.exception.HandleInvalidError
Reported by: | Owned by: | Tom Goddard | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | VR | Version: | |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description
The following bug report has been submitted: Platform: Windows-10-10.0.22631 ChimeraX Version: 1.9 (2024-12-11 19:11:19 UTC) Description Closing the SteamVR application after using SteamLink with ChimeraX "xr on" raises a panel from SteamVR that says quitting SteamVR will close ChimeraX. But in fact it does not close ChimeraX and instead produces this traceback. Log: Startup Messages --- note | available bundle cache has not been initialized yet UCSF ChimeraX version: 1.9 (2024-12-11) © 2016-2024 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > open C:\Users\goddard\Downloads\ChimeraX\PDB\8xps.cif format mmcif 8xps.cif title: Structure of Nipah virus Bangladesh string G protein ectodomain monomer bound to single-domain antibody n425 at 3.22 Angstroms overall resolution [more info...] Chain information for 8xps.cif #1 --- Chain | Description A | Nipah virus Bangladesh string G protein B | single-domain antibody n425 Non-standard residues in 8xps.cif #1 --- BMA — beta-D-mannopyranose (beta-D-mannose; D-mannose; mannose) MAN — alpha-D-mannopyranose (alpha-D-mannose; D-mannose; mannose) NAG — 2-acetamido-2-deoxy-beta-D-glucopyranose (N-acetyl-beta-D-glucosamine; 2-acetamido-2-deoxy-beta-D-glucose; 2-acetamido-2-deoxy-D-glucose; 2-acetamido-2-deoxy-glucose; N-ACETYL-D-GLUCOSAMINE) > xr true Failed to initialize OpenXR. The loader was unable to find or load a runtime. > vr true started SteamVR rendering > vr false > vr true started SteamVR rendering > vr false > xr true started OpenXR rendering SteamVR/OpenXR : oculus > xr true Traceback (most recent call last): File "C:\Program Files\ChimeraX-1.9\bin\Lib\site- packages\chimerax\core\triggerset.py", line 149, in invoke return self._func(self._name, data) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX-1.9\bin\Lib\site- packages\chimerax\vive\xr.py", line 786, in _next_frame self.process_controller_events() File "C:\Program Files\ChimeraX-1.9\bin\Lib\site- packages\chimerax\vive\xr.py", line 823, in process_controller_events self.process_controller_buttons() File "C:\Program Files\ChimeraX-1.9\bin\Lib\site- packages\chimerax\vive\xr.py", line 831, in process_controller_buttons e = xr.poll_next_event() ^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX-1.9\bin\Lib\site- packages\chimerax\vive\openxr.py", line 740, in poll_next_event self._poll_xr_events() # Update self._session_state to detect headset has lost focus ^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX-1.9\bin\Lib\site- packages\chimerax\vive\openxr.py", line 385, in _poll_xr_events event_buffer = xr.poll_event(self._instance) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX-1.9\bin\Lib\site-packages\xr\functions.py", line 144, in poll_event raise result xr.exception.HandleInvalidError: A supplied object handle was invalid. Error processing trigger "new frame": xr.exception.HandleInvalidError: A supplied object handle was invalid. File "C:\Program Files\ChimeraX-1.9\bin\Lib\site-packages\xr\functions.py", line 144, in poll_event raise result See log for complete Python traceback. OpenGL version: 3.3.0 NVIDIA 560.94 OpenGL renderer: NVIDIA GeForce RTX 3070/PCIe/SSE2 OpenGL vendor: NVIDIA Corporation Python: 3.11.4 Locale: en_US.cp1252 Qt version: PyQt6 6.7.1, Qt 6.7.1 Qt runtime version: 6.7.3 Qt platform: windows Manufacturer: Dell Inc. Model: OptiPlex 7000 OS: Microsoft Windows 11 Pro (Build 22631) Memory: 68,393,086,976 MaxProcessMemory: 137,438,953,344 CPU: 20 12th Gen Intel(R) Core(TM) i7-12700K OSLanguage: en-US Installed Packages: alabaster: 1.0.0 anyio: 4.7.0 appdirs: 1.4.4 asttokens: 3.0.0 auditwheel: 6.1.0 autocommand: 2.2.2 babel: 2.16.0 backports.tarfile: 1.2.0 beautifulsoup4: 4.12.3 blockdiag: 3.0.0 blosc2: 3.0.0 build: 1.2.1 certifi: 2024.8.30 cftime: 1.6.4.post1 charset-normalizer: 3.4.0 ChimeraX-AddCharge: 1.5.18 ChimeraX-AddH: 2.2.6 ChimeraX-AlignmentAlgorithms: 2.0.2 ChimeraX-AlignmentHdrs: 3.5 ChimeraX-AlignmentMatrices: 2.1 ChimeraX-Alignments: 2.16.1 ChimeraX-AlphaFold: 1.0.1 ChimeraX-AltlocExplorer: 1.1.2 ChimeraX-AmberInfo: 1.0 ChimeraX-Arrays: 1.1 ChimeraX-Atomic: 1.58.8 ChimeraX-AtomicLibrary: 14.1.11 ChimeraX-AtomSearch: 2.0.1 ChimeraX-AxesPlanes: 2.4 ChimeraX-BasicActions: 1.1.2 ChimeraX-BILD: 1.0 ChimeraX-BlastProtein: 3.0.0 ChimeraX-BondRot: 2.0.4 ChimeraX-BugReporter: 1.0.1 ChimeraX-BuildStructure: 2.13.1 ChimeraX-Bumps: 1.0 ChimeraX-BundleBuilder: 1.4.0 ChimeraX-ButtonPanel: 1.0.1 ChimeraX-CageBuilder: 1.0.1 ChimeraX-CellPack: 1.0 ChimeraX-Centroids: 1.4 ChimeraX-ChangeChains: 1.1 ChimeraX-CheckWaters: 1.4 ChimeraX-ChemGroup: 2.0.1 ChimeraX-Clashes: 2.3 ChimeraX-ColorActions: 1.0.5 ChimeraX-ColorGlobe: 1.0 ChimeraX-ColorKey: 1.5.6 ChimeraX-CommandLine: 1.2.5 ChimeraX-ConnectStructure: 2.0.1 ChimeraX-Contacts: 1.0.1 ChimeraX-Core: 1.9 ChimeraX-CoreFormats: 1.2 ChimeraX-coulombic: 1.4.4 ChimeraX-Crosslinks: 1.0 ChimeraX-Crystal: 1.0 ChimeraX-CrystalContacts: 1.0.1 ChimeraX-DataFormats: 1.2.3 ChimeraX-Dicom: 1.2.6 ChimeraX-DistMonitor: 1.4.2 ChimeraX-DockPrep: 1.1.3 ChimeraX-Dssp: 2.0 ChimeraX-EMDB-SFF: 1.0 ChimeraX-ESMFold: 1.0 ChimeraX-FileHistory: 1.0.1 ChimeraX-FunctionKey: 1.0.1 ChimeraX-Geometry: 1.3 ChimeraX-gltf: 1.0 ChimeraX-Graphics: 1.4.1 ChimeraX-Hbonds: 2.5 ChimeraX-Help: 1.3 ChimeraX-HKCage: 1.3 ChimeraX-IHM: 1.1 ChimeraX-ImageFormats: 1.2 ChimeraX-IMOD: 1.0 ChimeraX-IO: 1.0.3 ChimeraX-ItemsInspection: 1.0.1 ChimeraX-IUPAC: 1.0 ChimeraX-KVFinder: 1.2.1 ChimeraX-Label: 1.1.14 ChimeraX-ListInfo: 1.2.2 ChimeraX-Log: 1.2 ChimeraX-LookingGlass: 1.1 ChimeraX-Maestro: 1.9.1 ChimeraX-Map: 1.3 ChimeraX-MapData: 2.0 ChimeraX-MapEraser: 1.0.1 ChimeraX-MapFilter: 2.0.1 ChimeraX-MapFit: 2.0 ChimeraX-MapSeries: 2.1.1 ChimeraX-Markers: 1.0.1 ChimeraX-Mask: 1.0.2 ChimeraX-MatchMaker: 2.1.6 ChimeraX-MCopy: 1.0 ChimeraX-MDcrds: 2.7.2 ChimeraX-MedicalToolbar: 1.1 ChimeraX-Meeting: 1.0.1 ChimeraX-MLP: 1.1.1 ChimeraX-mmCIF: 2.14.2 ChimeraX-MMTF: 2.2 ChimeraX-ModelArchive: 1.0 ChimeraX-Modeller: 1.5.18 ChimeraX-ModelPanel: 1.5 ChimeraX-ModelSeries: 1.0.1 ChimeraX-Mol2: 2.0.3 ChimeraX-Mole: 1.0 ChimeraX-Morph: 1.0.2 ChimeraX-MouseModes: 1.2 ChimeraX-Movie: 1.0 ChimeraX-MutationScores: 1.0 ChimeraX-Neuron: 1.0 ChimeraX-Nifti: 1.2 ChimeraX-NMRSTAR: 1.0.2 ChimeraX-NRRD: 1.2 ChimeraX-Nucleotides: 2.0.3 ChimeraX-OpenCommand: 1.14 ChimeraX-OrthoPick: 1.0.1 ChimeraX-PDB: 2.7.6 ChimeraX-PDBBio: 1.0.1 ChimeraX-PDBLibrary: 1.0.4 ChimeraX-PDBMatrices: 1.0 ChimeraX-PickBlobs: 1.0.1 ChimeraX-Positions: 1.0 ChimeraX-PresetMgr: 1.1.2 ChimeraX-PubChem: 2.2 ChimeraX-ReadPbonds: 1.0.1 ChimeraX-Registration: 1.1.2 ChimeraX-RemoteControl: 1.0 ChimeraX-RenderByAttr: 1.6.2 ChimeraX-RenumberResidues: 1.1 ChimeraX-ResidueFit: 1.0.1 ChimeraX-RestServer: 1.3.1 ChimeraX-RNALayout: 1.0 ChimeraX-RotamerLibMgr: 4.0 ChimeraX-RotamerLibsDunbrack: 2.0 ChimeraX-RotamerLibsDynameomics: 2.0 ChimeraX-RotamerLibsRichardson: 2.0 ChimeraX-SaveCommand: 1.5.1 ChimeraX-SchemeMgr: 1.0 ChimeraX-SDF: 2.0.2 ChimeraX-Segger: 1.0 ChimeraX-Segment: 1.0.1 ChimeraX-Segmentations: 3.5.6 ChimeraX-SelInspector: 1.0 ChimeraX-SeqView: 2.14 ChimeraX-Shape: 1.0.1 ChimeraX-Shell: 1.0.1 ChimeraX-Shortcuts: 1.2.0 ChimeraX-ShowSequences: 1.0.3 ChimeraX-SideView: 1.0.1 ChimeraX-SimilarStructures: 1.0.1 ChimeraX-Smiles: 2.1.2 ChimeraX-SmoothLines: 1.0 ChimeraX-SpaceNavigator: 1.0 ChimeraX-StdCommands: 1.18.1 ChimeraX-STL: 1.0.1 ChimeraX-Storm: 1.0 ChimeraX-StructMeasure: 1.2.1 ChimeraX-Struts: 1.0.1 ChimeraX-Surface: 1.0.1 ChimeraX-SwapAA: 2.0.1 ChimeraX-SwapRes: 2.5 ChimeraX-TapeMeasure: 1.0 ChimeraX-TaskManager: 1.0 ChimeraX-Test: 1.0 ChimeraX-Toolbar: 1.2.3 ChimeraX-ToolshedUtils: 1.2.4 ChimeraX-Topography: 1.0 ChimeraX-ToQuest: 1.0 ChimeraX-Tug: 1.0.1 ChimeraX-UI: 1.41 ChimeraX-Umap: 1.0 ChimeraX-uniprot: 2.3.1 ChimeraX-UnitCell: 1.0.1 ChimeraX-ViewDockX: 1.4.4 ChimeraX-VIPERdb: 1.0 ChimeraX-Vive: 1.1 ChimeraX-VolumeMenu: 1.0.1 ChimeraX-vrml: 1.0 ChimeraX-VTK: 1.0 ChimeraX-WavefrontOBJ: 1.0 ChimeraX-WebCam: 1.0.2 ChimeraX-WebServices: 1.1.4 ChimeraX-Zone: 1.0.1 colorama: 0.4.6 comm: 0.2.2 comtypes: 1.4.5 contourpy: 1.3.1 cxservices: 1.2.3 cycler: 0.12.1 Cython: 3.0.10 debugpy: 1.8.9 decorator: 5.1.1 docutils: 0.21.2 executing: 2.1.0 filelock: 3.15.4 fonttools: 4.55.3 funcparserlib: 2.0.0a0 glfw: 2.8.0 grako: 3.16.5 h11: 0.14.0 h5py: 3.12.1 html2text: 2024.2.26 httpcore: 1.0.7 httpx: 0.28.1 idna: 3.10 ihm: 1.3 imagecodecs: 2024.6.1 imagesize: 1.4.1 importlib_metadata: 8.0.0 importlib_resources: 6.4.0 inflect: 7.3.1 ipykernel: 6.29.5 ipython: 8.26.0 ipywidgets: 8.1.5 jaraco.context: 5.3.0 jaraco.functools: 4.0.1 jaraco.text: 3.12.1 jedi: 0.19.1 Jinja2: 3.1.4 jupyter_client: 8.6.2 jupyter_core: 5.7.2 jupyterlab_widgets: 3.0.13 kiwisolver: 1.4.7 line_profiler: 4.1.3 lxml: 5.2.2 lz4: 4.3.3 MarkupSafe: 3.0.2 matplotlib: 3.9.2 matplotlib-inline: 0.1.7 more-itertools: 10.3.0 msgpack: 1.0.8 ndindex: 1.9.2 nest-asyncio: 1.6.0 netCDF4: 1.6.5 networkx: 3.3 nibabel: 5.2.0 nptyping: 2.5.0 numexpr: 2.10.2 numpy: 1.26.4 openvr: 1.26.701 ordered-set: 4.1.0 packaging: 23.2 packaging: 24.1 ParmEd: 4.2.2 parso: 0.8.4 pep517: 0.13.1 pillow: 10.4.0 pip: 24.2 pkginfo: 1.11.1 platformdirs: 4.3.6 platformdirs: 4.2.2 prompt_toolkit: 3.0.48 psutil: 6.0.0 pure_eval: 0.2.3 py-cpuinfo: 9.0.0 pycollada: 0.8 pydicom: 2.4.4 pyelftools: 0.31 Pygments: 2.18.0 pynmrstar: 3.3.4 pynrrd: 1.0.0 PyOpenGL: 3.1.7 PyOpenGL-accelerate: 3.1.7 pyopenxr: 1.0.3401 pyparsing: 3.2.0 pyproject_hooks: 1.2.0 PyQt6-commercial: 6.7.1 PyQt6-Qt6: 6.7.3 PyQt6-WebEngine-commercial: 6.7.0 PyQt6-WebEngine-Qt6: 6.7.3 PyQt6-WebEngineSubwheel-Qt6: 6.7.3 PyQt6_sip: 13.8.0 python-dateutil: 2.9.0.post0 pytz: 2024.2 pywin32: 306 pyzmq: 26.2.0 qtconsole: 5.5.2 QtPy: 2.4.2 qtshim: 1.0 RandomWords: 0.4.0 requests: 2.32.3 scipy: 1.14.0 setuptools: 72.1.0 sfftk-rw: 0.8.1 six: 1.16.0 sniffio: 1.3.1 snowballstemmer: 2.2.0 sortedcontainers: 2.4.0 soupsieve: 2.6 Sphinx: 8.0.2 sphinx-autodoc-typehints: 2.2.3 sphinxcontrib-applehelp: 2.0.0 sphinxcontrib-blockdiag: 3.0.0 sphinxcontrib-devhelp: 2.0.0 sphinxcontrib-htmlhelp: 2.1.0 sphinxcontrib-jsmath: 1.0.1 sphinxcontrib-qthelp: 2.0.0 sphinxcontrib-serializinghtml: 2.0.0 stack-data: 0.6.3 superqt: 0.6.3 tables: 3.10.1 tcia_utils: 1.5.1 tifffile: 2024.7.24 tinyarray: 1.2.4 tomli: 2.0.1 tornado: 6.4.2 traitlets: 5.14.3 typeguard: 4.3.0 typing_extensions: 4.12.2 typing_extensions: 4.12.2 tzdata: 2024.2 urllib3: 2.2.3 wcwidth: 0.2.13 webcolors: 24.6.0 wheel: 0.43.0 wheel: 0.43.0 wheel-filename: 1.4.1 widgetsnbextension: 4.0.13 WMI: 1.5.1 zipp: 3.19.2
Change History (3)
comment:1 by , 9 months ago
Component: | Unassigned → VR |
---|---|
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → Closing SteamVR app: xr.exception.HandleInvalidError |
comment:2 by , 9 months ago
comment:3 by , 9 months ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Fixed.
Added code to detect when OpenXR connection is lost and give an error message and switch back to mono camera.
This also fixes #16662.
Note:
See TracTickets
for help on using tickets.
When running ChimeraX from a cygwin shell the shell also gets the following messages
xrNegotiateLoaderRuntimeInterface bRunningInAppContainer: 0
Error [GENERAL | xrPollEvent | OpenXR-Loader] : No active XrInstance handle.