Opened 6 years ago
Closed 6 years ago
#2317 closed defect (fixed)
OpenGL buffer "None" was not deleted
Reported by: | Owned by: | Tom Goddard | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Graphics | Version: | |
Keywords: | Cc: | tic20@… | |
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description
The following bug report has been submitted: Platform: Darwin-18.7.0-x86_64-i386-64bit ChimeraX Version: 0.91 (2019-08-06) Description Buffer not deleted error after moving volume threshold back and forth on histogram to ends of range, then stopping in middle and selecting surface. This test case was discovered by Tristan Croll. Log: UCSF ChimeraX version: 0.91 (2019-08-06) © 2016-2019 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > open 1a0m format mmCIF fromDatabase pdb 1a0m title: 1.1 angstrom crystal structure of A-conotoxin [TYR15]-epi [more info...] Chain information for 1a0m #1 --- Chain | Description A B | α-conotoxin [TYR15]-epi Non-standard residues in 1a0m #1 --- NH2 — amino group > molmap #1 3 > surface zone #2 nearAtoms #1 distance 2 > select #2 2 models selected Exception ignored in: <function Buffer.__del__ at 0x11a6f2b90> Traceback (most recent call last): File "/Users/goddard/Desktop/ChimeraX Aug 6 2019.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site- packages/chimerax/core/graphics/opengl.py", line 2440, in __del__ % self.shader_variable_name) chimerax.core.graphics.opengl.OpenGLError: OpenGL buffer "None" was not deleted before core.graphics.Buffer destroyed OpenGL version: 4.1 ATI-2.11.20 OpenGL renderer: AMD Radeon Pro 580 OpenGL Engine OpenGL vendor: ATI Technologies Inc.
Change History (2)
comment:1 by , 6 years ago
Cc: | added |
---|---|
Component: | Unassigned → Graphics |
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → OpenGL buffer "None" was not deleted |
comment:2 by , 6 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Note:
See TracTickets
for help on using tickets.
Fixed.
A Drawing was deleting the element (triangle) buffer when there were zero triangles and setting its DrawShape.element_buffer = None, but the element buffer was sometimes still in the _buffers_need_update set, causing the deleted buffer to be revived. But then that revived buffer never had the delete_buffer() method called on it because the element_buffer attribute no longer pointed to it. This took hours to track down and has been reported several times in the past year. I was only able to figure it out from a reproducible test case discovered by Tristan.
To fix this the code no longer deletes the element buffer when there are 0 triangles, it just keeps a zero triangle buffer. Also I made it raise an error to try to revive a deleted buffer.