CesiumGS / CesiumGS/cesium

Crash when setting an old clipping plane

Open
#6,599 6 comments 0 reactions 0 assignees View on GitHub
type - bug
Dominant language
JavaScript
Stars
15.7k
Forks
3.9k
Avg merge
4d 6h
Merged PRs (30d)
34

Description

The way we handle ownership for clipping planes might be too strict. Doing something like assigning a clipping plane to a tileset, assigning a different clipping plane, and then assigning the original clipping plane causes a crash. It might be better to leave the clipping plane deletion up to the user instead?

[Sandcastle demo](https://cesiumjs.org/Cesium/Build/Apps/Sandcastle/#c=xVRda9swFP0rwi+xwVGSho2RpNlH9hIYdLRhNMx7UO0bR0yWjCQ7tGX/fdeS3Tpd+rIMZgKxrs459+oeXddMk5rDATS5JBIOZAWGVwX95mLhIHXLlZKWcQl6EM0TmcgaWZYLMGCPaf5v+nnjN8PHRBJ8Ki1mHWSt5DUYVekU6E6r4qNB4DoLp++mb6NE/mozuPzUpCCBlpoX3PIaDGVZFraZG2ALe1Cq2Kj+hq9RqMMtFjicjMdzH9nzfN+ELp4iiNk6zMWbHqYJeZaPpYKXJZf5V8EkmKvKvmzYqg9YKSEgtVzJrgOl45EZ+e7XzfMaO+xvMG3xjclpOJzEZIy/KHbniuK/VnoWGrp+nCGFOq4uX9T2PKVJr6ht5JV+tFeiUz1lx1rK/2rHuU3s+XGmsz07fBP/iR/O2daOVrCS2M1O5hpyXJkZsbqCpxFup5Eee4U2nZglR7hhMkuZsQKaMd+oPBfwqbIWbRs41CB2GWKyq6S3M91D+hOyiLS+vp7TA8n7k5M8O3Wh5u4kQRwsjL0XsPQZPvCiVNo2n7SQ0pGFAu8S9mx0V2ECzGxMc/zFqCMtMl4Tnl0mwYtvaRJgVmYM7uwqIW74AyTBcjFC/BFNKJZhZVc1aMHuG8h+svzig5TSxQiXf7KsUuKO6Z7ibw)
In the demo uncheck the box and then check it again.

Contributor guide

Open the contributing guide

Research direction

Start by running the linked Sandcastle demo and reproduce the crash by unchecking and rechecking the clipping-plane box. Trace how clipping-plane ownership changes when a tileset receives a new plane and then the original one; done means the sequence no longer crashes and the intended deletion behavior is documented or confirmed.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
computer-graphics
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.