Ticket #1059 (closed defect: fixed)
Context tests broken (e.g. REQUIRES)
| Reported by: | sdlime | Owned by: | sdlime |
|---|---|---|---|
| Priority: | high | Milestone: | |
| Component: | MapServer C Library | Version: | 4.3 |
| Severity: | normal | Keywords: | |
| Cc: |
Description
Older versions of MapServer drawing code actually manipulated LAYER status if scale tests failed. Now with the function msLayerIsVisible the status is not changed. This is a good thing with MapScript etc... Problem is that REQUIRES is not catching layers turned off by scaling. msEvalContext needs to be reworked to use msLayerIsVisible itself. Problem is that msLayerIsVisible calls msEvalContext and that can lead to an infinite loop if 2 context expressions refer to each other, for example: LAYER NAME PARKS REQUIRES "![DOQS]" ... END LAYER NAME DOQS REQUIRES "![PARKS]" ... END Never mind that it doesn't make sense, it will cause a loop though. To know if PARKS is visible I need to know if DOQS are visible and so on... Do we accept this as a possiblity or figure out a way to stop it... Steve
Change History
Note: See
TracTickets for help on using
tickets.
