Subject:
|
Re: Recursive MPD files (WAS: Re: Lich (Undead Wizard))
|
Newsgroups:
|
lugnet.cad.dev
|
Date:
|
Mon, 13 Mar 2000 15:57:54 GMT
|
Viewed:
|
977 times
|
| |
| |
In lugnet.cad.dat.models, Don Heyse wrote:
> Well maybe just recursive MPD files are evil. Do you realize ring2.dat
> is an ldraw primitive and that by redefining it in the MPD file you've
> created an infinite loop of dat file includes.
>
> ring2.dat -> flame3.dat -> flame3s.dat ...-> stud2a.dat -> ring2.dat...
>
> Of course stud2a.dat expects to get the ring2.dat primative in the P
> directory. But since ring2.dat from the MPD file was encountered first,
> we get that one instead (and the ring is complete).
>
> Then that lame excuse for an OS, Windows gets so hosed up when lich.dat
> blows the stack in my ldglite program that it refuses to do ANY more
> opengl until I reboot.
>
> So my question is: How do we fix this? Must I check for infinite
> loops when parsing MPD files. And why doesn't that L3Input code Lars
> loaned me already do that? Hasn't this come up before?
I don't think this can be fixed (although any serious syntax-check-type
utility should catch it). So any program which processes LDraw files
must check the reference-chain for recursive calls.
I think it hasn't been an issue because most models are single-file.
And we've been lucky.
Steve
|
|
Message is in Reply To:
6 Messages in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|